Je dois ensemencer le générateur de nombres aléatoires dans boost (qui est chargé depuis un int) pour quelques processus, pour un programme qui doit compiler et fonctionner à la fois sous Windows et sous Linux.Graines aléatoires à partir de millisecondes sous Windows et Linux
J'ai utilisé std:time(0)
, qui a fonctionné, mais comme les processus sont des tâches qui s'exécutent simultanément, certaines d'entre elles fonctionneraient à la même seconde, produisant les mêmes résultats.
J'ai donc besoin de le semer en millisecondes, ou tout autre générateur aléatoire multi-plateforme d'ailleurs. J'ai essayé clock()
mais je ne pouvais pas le faire convertir de time_t
en int.
Merci.
Même avec une précision de l'ordre de la milliseconde, il est probable que 2 fils finissent avec la même graine. – Goz
J'espère que ce n'est pas destiné à être sécurisé. –
@Goz: Et Windows est généralement précis à quelque chose comme 32ms ... –