Alla ricerca di un filo generatore casuale sicuro ho trovato una classe generatore di Mersenne Twister che l'autore dice che se thread-safe:Discussione sicuro Mersenne Twister
http://www.umiacs.umd.edu/~yangcj/mtrnd.html
Ma dopo aver studiato il codice non riesco a vedere erano è sicuro filo. Non ci sono serrature di alcun tipo o qualcosa che assomigli a una variabile di blocco.
Questa implementazione è davvero sicura? Se sì, qual è la magia?
La mia applicazione richiede di produrre numeri casuali ma univoci tra tutti i thread. Utilizzando un oggetto Mersenne Twist diverso per thread posso garantire l'unicità dei numeri generati? – Horacio
La generazione di numeri univoci è una domanda diversa. Inoltre, otterrete la stessa sequenza a meno che non assegniate a ciascun oggetto un seme diverso. – Amnon
Finché utilizzo lo stesso oggetto mersenne otterrò numeri casuali univoci finché la sequenza non si ripeterà correttamente? E per il mersenne twister il ciclo si ripete dopo un lungo periodo, molto più grande di quello che potrebbe richiedere la mia app, quindi penso di poter usare questo generatore casuale anche come generatore di id unico. Correggimi se sbagli, per favore – Horacio