人々は通常、を使用するときに常に同じ番号を取得する理由を尋ねますRandom
。Random
彼らの場合、彼らは(1つのインスタンスだけを使用するのではなく)毎回の新しいインスタンスを意図せずに作成します。これはもちろん、常に同じ数になります。しかし、私の場合、異なる数のストリームを返すいくつかのインスタンスが必要です。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);
ご覧のとおり、私はここでは少し創造性がなく、あなたの助けが必要です。ありがとう。