c++ - 为什么 c++11 sleep_for microseconds 实际上睡了毫秒?
问题描述
我在我的 centos 7 服务器中调用了这个函数。
我发现 std::this_thread::sleep_for(chrono::nanoseconds(1)) 实际上睡了一毫秒,有什么解释吗?我认为这可能是由操作系统设置引起的?
解决方案
从sleep_for文档中,您可以看到:
至少在指定的 sleep_duration 内阻止当前线程的执行。
由于调度或资源争用延迟,此函数可能会阻塞比 sleep_duration 更长的时间。
最可能的原因是您的进程调度程序踢出休眠线程并且没有重新调度它一毫秒。
推荐阅读
- highcharts - Highcharts/Highstock 跑圈
- angular - Rxjs 运算符 withLatestFrom 无法按预期工作
- gradle - 如何在 Kotlin DSL 的脚本插件中包含 Gradle 插件?
- c++ - 关于对齐存储和可简单复制/可破坏的类型
- django - 分页不适用于多个查询
- css - 使用 Bootstrap 轮播在单个轮播项目中显示多列
- android - I keep connection failed error in my "onFailure" method
- postgresql - I am unable to see the database I created using pgAdmin4
- haskell - 欧拉计划 #24 在 Haskell
- react-native - React Native stored array data with asyncstorage returns nothing