Fonction veille en C
Problème :
En C, comment mettre en pause un programme pour une durée spécifiée en millisecondes, similaire à Sleep(time); dans d'autres langues ?
Signature d'en-tête et de fonction :
Pour faciliter le sommeil en C, incluez le
<code class="cpp">std::this_thread::sleep_for(std::chrono::milliseconds timespan);</code>
Solution :
Pour suspendre le programme pendant une durée spécifique, utilisez la syntaxe suivante :
<code class="cpp">std::chrono::milliseconds timespan(111605); // or any desired time std::this_thread::sleep_for(timespan);</code>
Fonctions de veille historiques :
Avant C 11, C manquait de capacités de thread et de veille. La solution suivante, dépendante de la plate-forme, a été utilisée :
<code class="cpp">#ifdef _WIN32 #include <windows.h> void sleep(unsigned milliseconds) { Sleep(milliseconds); } #else #include <unistd.h> void sleep(unsigned milliseconds) { usleep(milliseconds * 1000); // takes microseconds } #endif</code>
Alternativement, une option pré-C 11 plus simple consistait à utiliser boost::this_thread::sleep.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!