Einzigartige random-Nummer für einen bestimmten timestamp

Bin ich irgendwie learning-Konzepte von Random number generation & Multi-Threading in java.

Die Idee ist, nicht die Erzeugung eine wiederholte zufällige Anzahl Reihe 1000 in einer bestimmten Millisekunde (wenn man Bedenkt, dass nicht mehr als 50 Daten, die in einem Multithreading-fähigen Weise verarbeitet werden, in einer Millisekunde). So, die Liste von zufällig generierten Nummer, die auf bestimmte Zeit ist einzigartig. Können Sie mir eine Idee, wie ich am Ende der Generierung paar wiederholt Zufallszahlen (auch, gibt es eine beträchtliche Wahrscheinlichkeit) in eine bestimmte milli Sekunde.

Ich habe versucht, die folgenden Dinge, wo ich versagt habe.

Random random = new Random(System.nanoTime());
double randomNum = random.nextInt(999);

//

int min=1; int max=999;
double randomId = (int)Math.abs(math.Random()* (max - min + 1) + min);

//

Random random = new Random(System.nanoTime()); //also tried new Random();
double randomId = (int)Math.abs(random.nextDouble()* (max - min + 1) + min);

Als ich bin, indem der Zeitstempel, der generiert wird, in einer Multithread-Umgebung, die ich sehen, die gleichen ids (um die 8-10), die erzeugt wird (2-4 mal) für 5000+ einzigartige Daten.

  • Was haben Sie bisher ausprobiert? Bitte fügen Sie einige Ihrer code. Wo genau ist das problem?
  • Es wäre besser, Sie würde versuchen zu klären, eine Sache nach der anderen. Zum Beispiel, multithreading hat nichts zu tun mit der Erzeugung von Zufallszahlen, also sollten wir nicht verwechseln.
  • Was sind die max und min?
  • gud fangen ingo, habe ich begonnen zu geben etwas andere Frage!!! endete diese Frage zu stellen!!
  • min und max sind im Bereich 1-999!
InformationsquelleAutor Logan | 2013-10-01
Schreibe einen Kommentar