使用std::this_thread::sleep_for配合chrono库实现延时,如延时2秒:std::this_thread::sleep_for(std::chrono::seconds(2)),该方法跨平台、类型安全且可读性强,推荐用于现代C++。

在C++中实现程序延时执行,常用的方法是使用标准库提供的睡眠(sleep)函数。这些函数可以让程序暂停指定的时间,适用于控制循环间隔、模拟耗时操作等场景。
C++11标准:使用std::this_thread::sleep_for
现代C++推荐使用 和 头文件中的功能来实现高精度延时。
包含头文件:#include 和 #include 使用 std::this_thread::sleep_for() 指定等待时间 时间单位由 std::chrono 提供,如 milliseconds、seconds、microseconds
示例代码:
#include #include #include int main() { std::cout << "程序开始..." << std::endl; // 延时2秒 std::this_thread::sleep_for(std::chrono::seconds(2)); // 或者延时500毫秒 // std::this_thread::sleep_for(std::chrono::milliseconds(500)); std::cout << "2秒后继续执行" << std::endl; return 0;}
跨平台兼容性说明
上述方法在Windows、Linux和macOS上均可使用,是C++11及以后版本的标准做法,无需依赖系统API。
立即学习“C++免费学习笔记(深入)”;
优点:类型安全、可读性强、支持多种时间单位 可组合使用:例如 sleep_for(2s + 500ms)(需 using namespace std::literals) 适合多线程环境,不会影响其他线程运行
旧式方法(不推荐但可能遇到)
在一些老代码中可能会看到以下方式:
sleep(n):Linux/Unix下表示秒,需包含 Sleep(n):Windows API,单位是毫秒,需包含 ,注意大写S
这类方法不具备跨平台性,建议新项目统一使用 std::this_thread::sleep_for。
基本上就这些。用现代C++的chrono加thread组合,写延时既清晰又可靠。
以上就是C++ sleep函数用法_C++程序延时执行的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1486229.html
微信扫一扫
支付宝扫一扫