
如何用vc编写一个延时的函数?
我的目的是在延时的时候cpu几乎未被使用,不能采用程序一直查询系统时间的方法,那样的话电脑在延时的时候就几乎什么也干不了了!请具体说明在vc2003下的函数及所需要的头文...
我的目的是在延时的时候cpu几乎未被使用,不能采用程序一直查询系统时间的方法,那样的话电脑在延时的时候就几乎什么也干不了了!
请具体说明在 vc2003下的函数及所需要的头文件 展开
请具体说明在 vc2003下的函数及所需要的头文件 展开
5个回答
展开全部
Sleep(param)是一个不错的函数,它可以使单个线程主动放弃自己的CPU时间片,所以极少占用CPU,这个是WinAPI,一般不同加别的头文件了。另外你也可以用SetThreadPriority(GetCurrentThread),-1)来降低调用其线程的优先级,一个低优先级的线程即使发生死循环都不会把系统拖慢的,事实上也经常用这个特性来做死循环以完成一些正常难以达到的操作。它的第一个参数是线程句柄,第二个参数是优先级,优先级有-2,-1,0,1,2五种,-2最低,2最高(即时)。一般程序为0,只要你低于0就不会影响到其他程序了。
推荐于2016-09-10 · 知道合伙人软件行家
关注

展开全部
直接调用系统 Sleep 函数;
可以写一个方法,逻辑如下
void delay(int ms)
{
int cur = GetTickCount();
where (GetTickCount() - cur < ms);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Sleep(毫秒数),需要包含windows.h(如果你确定你的工程没有包含的话)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
TimeDelay(unsigned long microsec)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Sleep()函数即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询