C++多线程sleep函数会互相影响吗

 我来答
天蝎神经侠侣
高粉答主

推荐于2018-05-10 · 关注我不会让你失望
知道大有可为答主
回答量:7533
采纳率:67%
帮助的人:689万
展开全部
不影响其他线程。另外,这跟c++没关系,线程怎么实现是操作系统决定的。比如linux上pthread就是遵循POSIX标准的。

Sleep函数在C++语言中是非常重要并且非常常用的一个函数,它的作用为当程序执行到这个函数时,将暂停,然后到达条件后才继续执行,此处的条件为暂停的时间,即实参部分,单位是毫秒。(注:1秒=1000毫秒)。比如你的实参部分为100,即Sleep(1000);那么,当程序执行到这里是,将暂停1000毫秒,即一秒,然后才继续执行。
实例
// 倒计时程序#include <iostream>
#include <windows.h> // 头文件
using namespace std;
int main()
{
int z;
// 定义变量
do // 执行do_while语句
{
cout<<"你要倒计时多少秒呢?"<<endl;
int a;
cin>>a;
int b;
for(b=a;b>=1;- -b)
{
cout<<b<<endl;
Sleep(1000); // 调用Sleep函数,即每1000毫秒(1秒)输出一次
}
cout<<"时间到!\a"<<endl;
cin.ignore(100,'\n'); // 清除输入流中多余的字符
cout<<"1 重新倒计时\n"<<"2 退出"<<endl;
cin>>z;
}
while(z==1); // 判断是否重新倒计时
cin.get(); // 程序暂停
return 0; // 主函数返回值} // 结束主函数。
fifaqqmm
2012-12-13 · 超过37用户采纳过TA的回答
知道小有建树答主
回答量:116
采纳率:0%
帮助的人:74.1万
展开全部
不影响其他线程。另外,这跟c++没关系,线程怎么实现是操作系统决定的。比如linux上pthread就是遵循POSIX标准的。c++对线程是一无所知的(至少在c++0x之前,c++0x提供了一个跨平台的线程库,你可以看看)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
loboho
2012-12-13 · TA获得超过506个赞
知道小有建树答主
回答量:441
采纳率:100%
帮助的人:405万
展开全部
sleep只是令本线程挂起,不影响其他线程
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2012-12-13
展开全部
如果是线程之间是互斥的使用公共变量,就不会受影响……
来自:求助得到的回答
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式