5042Fermer5044
ZerosquareLe 25/01/2024 à 01:37
Brunni (./5041) :
Je me demande s'il n'y a pas une telle fonction dans std::chrono ou std::thread maintenant, tiens.
Alors effectivement, il y a std::chrono::steady_clock() pour lire la valeur actuelle d'une horloge qui ne dépend pas de l'heure/date système, et std::this_thread::sleep_for() pour mettre en pause un thread pendant une certaine durée. Sauf que pour cette dernière :
The standard recommends that a steady clock is used to measure the duration. If an implementation uses a system clock instead, the wait time may also be sensitive to clock adjustments.
...parce que ç'aurait été trop beau que ça soit garanti grin

Bon en pratique, s'ils ont pas été trop souillons, j'imagine que ça doit marcher au moins pour Linux. Mais c'est un peu bourrin de passer du C au C++ juste pour ça cheeky

Godzil (./5042) :
Apre les gens (fou) de chez POSIX peuvent dire ce qu'ils veulent usleep n'est pas prêt de disparaitre, trop de code en dépends
oui, je ne pense pas non plus qu'ils vont l'enlever en pratique. Mais usleep() a d'autres inconvénients que j'ai cité (et accessoirement, je viens de voir que le délai est limité à 1 seconde maximum).