ランダムfloat
とdouble
の番号を生成するために、次のコードを書いています。乱数を生成する静的メソッドを使用することをお勧めしますか?
public static class Statics
{
private static readonly Random random = new Random();
private static readonly object syncLock = new object();
public static double getRandomDouble(double min, double max)
{
lock (syncLock)
{
return random.NextDouble() * (max - min) + min;
}
}
public static float getRandomFloat(float min, float max)
{
lock (syncLock)
{
return (float)random.NextDouble() * (max - min) + min;
}
}
}
それは私がstatic
class
と乱数を生成するための方法を使用していることをOKですか?
私のプログラムは、これらのメソッドに大きく依存しているので、生成された数値が本当にランダムであることを確認したいと思います。これらのジェネレータは多くのオブジェクトによって使用されていますが、同時には使用されていません。
はい、なぜか?クラスごとに1つのランダムジェネレータが必要な場合は、これを行うことができます。 – DogeAmazed
私にはうってつけです。私は問題を見ません。 – Codor
ロックを使用しているので、スレッドを使用していると仮定します。乱数が多い場合、ボトルネックが発生する可能性があります。 – user1781290