Comment générer un uid vraiment aléatoire ?
Bonjour,
J'utilise des threads, qui peuvent se lancer simultanément, et il arrive que ces threads lisent ou écrivent un fichier en même temps...
Afin d'éviter une concurrence à l'écriture du fichier, je fais en sorte que son nom contienne un uid généré aléatoirement...
Pour générer un uid aléatoirement, j'ai fait une fonction contenant notamment :
Code:
1 2
| randomize();
uid = rand()%100000; |
Seulement si la fonction est appelée simultanément par 2 threads, l'uid généré aléatoirement est malheureusement le même...
Y'a-il un moyen de contourner cela, de générer vraiment un nombre aléatoire même s'il est généré au même instant ?
Ou puis-je générer un uid à partir d'autres éléments (chaine de caractères par exemple) ?
Merci d'avance pour votre aide !