C 中的睡眠函数
问题:
在 C 中,如何暂停一个函数编程指定的持续时间(以毫秒为单位),类似于 Sleep(time);
标头和函数签名:
为了方便在 C 中休眠,请包含
<code class="cpp">std::this_thread::sleep_for(std::chrono::milliseconds timespan);</code>
解决方案:
要将程序暂停特定时间,请使用以下语法:
<code class="cpp">std::chrono::milliseconds timespan(111605); // or any desired time std::this_thread::sleep_for(timespan);</code>
历史睡眠函数:
在 C 11 之前,C 缺乏线程和睡眠功能。使用了以下依赖于平台的解决方案:
<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>
或者,一个更简单的 pre-C 11 选项是使用 boost::this_thread::sleep。
以上是如何在 C 中暂停执行一段指定的时间?的详细内容。更多信息请关注PHP中文网其他相关文章!