当前位置: 首页 > news >正文

C++睡眠函数:Windows平台下的Sleep函数和Linux平台的usleep函数

C/C++睡眠函数:Windows平台下的Sleep函数和Linux平台的usleep函数

WinAPI Sleep

Sleep函数属于Windows API,使用它需要先包含synchapi.h

void Sleep(DWORD dwMilliseconds);

函数仅有一个参数(睡眠时长),单位是毫秒
参考Microsoft Docs

UNIX usleep

仅在Linux平台可用,使用它需要先包含unistd.h

int usleep(useconds_t usec);

函数仅有一个参数(睡眠时长),单位是微秒。该数值最大不超过1000000微秒(也就是1秒)。
参考Linux and UNIX Man Pages

C++11引入的跨平台通用睡眠函数sleep_for

template <class Rep, class Period>
void sleep_for02(const chrono::duration<Rep,Period>& rel_time);

函数sleep_for与前两个函数一样,都只有一个参数指明睡眠时长。稍显复杂的是,这个参数rel_time的单位取决于用户。
看官方例程:

// this_thread::sleep_for example
#include <iostream>       // std::cout, std::endl
#include <thread>         // std::this_thread::sleep_for
#include <chrono>         // std::chrono::secondsint main() 
{std::cout << "countdown:\n";for (int i=10; i>0; --i) {std::cout << i << std::endl;std::this_thread::sleep_for(std::chrono::seconds(1));}std::cout << "Lift off!\n";return 0;
}

代码中使用std::chrono::seconds(1)表示1秒,同理可以用std::chrono::milliseconds(1000)来表示。

cplusplus Reference

http://www.lryc.cn/news/273121.html

相关文章:

  • 详解白帽子以及红队、蓝队和紫队
  • 1、docker常用技巧:docker数据位置更改
  • Qt之设置QLabel的背景色和前景色
  • 数模学习day06-主成分分析
  • Windows PowerShell的安全目标——安全警报
  • k8s笔记1- 初步认识k8s
  • ARM CCA机密计算软件架构之内存加密上下文(MEC)
  • python基于flask实现一个文本问答系统
  • lambda表达式使用和示例
  • STM32学习笔记十八:WS2812制作像素游戏屏-飞行射击游戏(8)探索游戏多样性,范围伤害模式
  • C#获取windows系统资源使用情况
  • PE解释器之PE文件结构
  • Android—— MIPI屏调试
  • BLE协议—协议栈基础
  • yolov8知识蒸馏代码详解:支持logit和feature-based蒸馏
  • 03-微服务-Ribbon负载均衡
  • 2023新年总结与展望
  • 论文阅读——SG-Former
  • 常用环境部署(十三)——GitLab整体备份及迁移
  • 海外数据中心代理与住宅代理:优缺点全面对比
  • springboot实现OCR
  • 【Scala 】注解
  • 数通基础知识总结
  • 机器学习深度学习面试笔记
  • 安卓和Android是两种不同的操作系统?
  • Java学习——设计模式——结构型模式2
  • 什么是Maven ??? (以及关于依赖,中央仓库,国内源)
  • c++期末考题笔试来咯
  • 目标检测篇:如何根据xml标注文件生成类别classes的json文件
  • spring见解2基于注解的IOC配置