Ihr Zufallszahlengenerator (RNG) scheint trotz der Verwendung einer Schleife nur eine eindeutige Zahl zu generieren. Debugging enthüllt verschiedene Zahlen während der Schleifenausführung, aber nach Abschluss halten alle Array -Elemente den gleichen Wert.
Random
Das Problem beruht auf der Erstellung einer neuen Random
-Stanz in jeder Schleifen -Iteration. Da Random
häufig unter Verwendung der Systemuhr ausgesät wird, kann eine schnell ausgeführte Schleife das
Random
Die Fix beinhaltet die Verwendung einer einzelnen statischen
RandomNumber
Hier ist die korrigierte
<code class="language-csharp">private static readonly Random random = new Random(); private static readonly object syncLock = new object(); public static int RandomNumber(int min, int max) { lock (syncLock) { // Thread-safe access return random.Next(min, max); } }</code>
random
Durch die Verwendung einer einzelnen lock
-Stanz und Synchronisierung des Zugriffs mit
Das obige ist der detaillierte Inhalt vonWarum produziert mein Zufallszahlengenerator nur eine eindeutige Zahl?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!