Люди обычно спрашивают, почему они всегда имеют одинаковые номера, когда они используют Random
. В своем случае они unintenionally каждый раз создают новый экземпляр Random
(вместо использования только одного экземпляра), что, конечно, все время приводит к одинаковым номерам. Но в моем случае мне нужно несколько экземпляров Random
, которые возвращают разные числовые потоки.
Использование жестко кодированных семян - это плохая идея, на мой взгляд, так как вы снова и снова получаете одинаковые значения после перезапуска программы. Что об этом:
int seed1 = (int)DateTime.Now.Ticks - 13489565;
int seed2 = (int)DateTime.Now.Ticks - 5564;
Я знаю, что это выглядит глупо и наивно, но после каждого перезапуска они избегают одинаковых значений, и оба семени должны отличаться. Или, может быть,
Random helper = new Random();
int seed1 = helper.Next(1, int.MaxValue);
int seed2 = helper.Next(1, int.MaxValue);
Как вы можете видеть, я здесь немного не творческий и нуждаюсь в вашей помощи. Спасибо.