#include
#include <unistd.h>
using namespace std;
int main() {
cout << “nitrate”;
cout << flush;
usleep(1000000);
cout << “firtilizers”;
return 0;
}

usleep函数能把线程挂起一段时间, 单位是微秒(千分之一毫秒)。本函数可暂时使程序停止执行。参数 micro_seconds 为要暂停的微秒数(us)。
这个函数不能工作在windows 操作系统中。用在Linux的测试环境下面
见:usleep() 与sleep()类似,用于延迟挂起进程。进程被挂起放到ready queue。
是一般情况下,延迟时间数量级是秒的时候,尽可能使用sleep()函数。且此函数已被废除,可使用nanosleep。如果延迟时间为几十毫秒(1ms = 1000us),或者更小,尽可能使用usleep()函数。这样才能最佳的利用CPU时间
该usleep()功能将导致调用线程暂停执行直到数微秒的实时参数指定了useconds或信号传递到调用线程,其作用是调用一个信号的捕获功能或终止进程。暂停的时间可能比所要求的系统的其他活动的调度要长。
该useconds参数必须小于1000000。如果useconds值是0,则调用没有影响。
如果一个sigalrm信号生成调用进程的执行过程中,如果usleep() sigalrm信号被忽略或无法交货,这是未指定是否usleep()返回时的sigalrm预定的信号。如果信号是被封锁,也未指定是否后尚未usleep()返回或是丢弃。
如果一个sigalrm信号生成调用进程执行usleep()期间,除了由于对alarm()事先打电话,如果sigalrm信号不被忽略或无法交货,它是不确定的,是否有其他信号比造成任何影响usleep()返回。
如果信号捕捉功能的中断usleep()检查或变化的时间sigalrm将产生,与sigalrm信号相关的动作,或是否sigalrm信号被阻止从交货,结果是不确定的。
如果信号捕捉功能的中断usleep()和电话siglongjmp()或longjmp()恢复环境保存到usleep()呼叫之前,行动与sigalrm信号和时间,sigalrm信号将产生未指定。它还未指定是否sigalrm信号被阻断,除非进程的信号屏蔽恢复作为环境的一部分。
实现可能限制定时器值的粒度。对于每个时间间隔定时器,如果请求的定时器值需要比实现支持细粒度的,实际的定时器的值将舍入为下一个支持的价值。
usleep()和任何以下之间的相互作用是不确定的:

Ubuntu C++ Thread Sleep相关推荐

  1. 如何在Ubuntu上运行.Net5控制台程序

    如何在Ubuntu上运行.Net5控制台程序 微软.net core已经发布到.Net5了,跨平台一直没有尝试过,闲来无事在Linux上跑一下控制台试试.Ubuntu就不介绍了,首先要在linux上装 ...

  2. 安装Linux双系统取消快速启动,为什么在双启动时禁用Windows 8上的快速启动?

    问题描述 如果你和Ubuntu一起安装,为什么每个人都一直提到在Windows 8上禁用快速启动?是仅针对UEFI计算机推荐的内容还是对旧版BIOS计算机的建议?是因为它使Windows分区无法从Li ...

  3. Linux多线程编程实例解析

    Linux系统下的多线程遵循POSIX线程接口,称为 pthread.编写Linux下的多线程程序,需要使用头文件pthread.h,连接时需要使用库libpthread.a.顺便说一下,Linux ...

  4. Linux 系统应用编程——线程基础

    传送门:Linux多线程编程实例解析 . linux多线程编程--同步与互斥 . 传统多任务操作系统中一个可以独立调度的任务(或称之为顺序执行流)是一个进程.每个程序加载到内存后只可以唯一地对应创建一 ...

  5. Linux系统开发9 线程同步

    [本文谢绝转载原文来自http://990487026.blog.51cto.com] <大纲> Linux系统编程8 线程同步多线程共享资源,不加锁,同步互斥演示多线程共享资源,加锁,同 ...

  6. ubuntu运行MC-GPU程序报错error, no cuda enabled GPU detected by thread #0!!

    dell工作站安装了两个nvidia quadro k4000显卡,系统是ubuntu 11.10 安装了cuda 5.0. 由于MC-GPU程序运行不出结果,以为其中一个未连接显示器的显卡坏了. 我 ...

  7. ubuntu中遇到jupyter出现问题ValueError: signal only works in main thread ERROR:tornado.application:Except

    问题:ValueError: signal only works in main thread  ERROR:tornado.application:Except 解决:pip install &qu ...

  8. JVM中可生成的最大Thread数量

    最近想测试下Openfire下的最大并发数,需要开大量线程来模拟客户端.对于一个JVM实例到底能开多少个线程一直心存疑惑,所以打算实际测试下,简单google了把,找到影响线程数量的因素有下面几个: ...

  9. 在Ubuntu 14.04 64bit上安装lua5.2

    缘起 近来Nginx+Lua的开发日渐盛行,也激发了我学习lua的兴趣,下面是在Ubuntu 14.04上lua环境的搭建笔记.对cdn厂商来说,流行的思路是, 前端nginx专注业务(使用lua轻量 ...

最新文章

  1. 在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求
  2. PMP-【第10章 项目沟通管理】-2021-2-16(220页-231页)
  3. 消除文法中一切左递归算法
  4. java reference详解_Java Reference详解
  5. 1个ieee1394端口_ieee1394接口是什么及作用
  6. Android中Messenger的使用
  7. 画图分析ehcach的缓存流程图
  8. sqlyog如何设置.时提示字段名_雷神新用户手册:拿到新电脑时如何简易设置参数!...
  9. HDU1812 - Count the Tetris
  10. mybatis枚举自动转换(通用转换处理器实现)
  11. dcmtk 3.6.0 error C1083: Cannot open include file: 'iostream.h' 解决办法
  12. Java类和对象(全网最细详解)
  13. 用html做祝福语朋友,对朋友的励志祝福语大全
  14. 某电商网站Java面试题-2(高级开发,架构级别)
  15. 或再被“转手”,家乐福中国还能“攀”上哪座靠山?
  16. 二极管与门电路及原理分析
  17. Linux平台上文件同步——rsync+inotify之定时同步
  18. 【Vue3】搭建vue3项目以及环境
  19. 恶搞!关闭程序进程!!嘿嘿嘿~
  20. MySQL的安装 和 navicat for mysql 安装

热门文章

  1. 常用查找算法(顺序、折半、二叉树、哈希、分块)介绍
  2. P2662 牛场围栏(同余最短路)
  3. C 简单瞎搞题(牛客练习赛22)(bitset优化dp)
  4. Codeforces Round #453 (Div. 1) D. Weighting a Tree 构造 + dfs树
  5. #6284. 数列分块 8 分块
  6. 【十二省联考】春节十二响【贪心】【堆】【启发式合并】
  7. 一起开心寒假训练总复习
  8. CF235D-Graph Game【LCA,数学期望】
  9. jzoj4050-寻宝游戏【二分,树状数组,LCA】
  10. NOI.AC-保镖【贪心,对顶堆】