未
未来107
Unregistered / Unconfirmed
GUEST, unregistred user!
线程中,我们往往用sleep可以大大降低cpu的占用率,因为它可以将暂时将cpu控制权
转交给其他线程,但是sleep的延时精度不够高,比如sleep(1),实际上并不是延时1ms
而往往是10毫秒左右,这就导致了很多实时场合不适应的问题(10ms延时太长了),这就
需要一种能够代替sleep的方法。很多网友提出了用如下的方式,的确下面的方式可以精确到1ms一下,但是他有个致命的缺点就是跟sleep不一样,sleep可以转交控制全,而下面的
方式不能丝毫降低cpu的占用率,甚至更加吃cpu,因为其他是死循环阿!各位朋友,有没有
精确到<=1ms又可以降低cpu占用率的方法!
LARGE_INTEGER li=0;
while(li<=interval)
{
QueryPerformanceCounter(&li)
}
转交给其他线程,但是sleep的延时精度不够高,比如sleep(1),实际上并不是延时1ms
而往往是10毫秒左右,这就导致了很多实时场合不适应的问题(10ms延时太长了),这就
需要一种能够代替sleep的方法。很多网友提出了用如下的方式,的确下面的方式可以精确到1ms一下,但是他有个致命的缺点就是跟sleep不一样,sleep可以转交控制全,而下面的
方式不能丝毫降低cpu的占用率,甚至更加吃cpu,因为其他是死循环阿!各位朋友,有没有
精确到<=1ms又可以降低cpu占用率的方法!
LARGE_INTEGER li=0;
while(li<=interval)
{
QueryPerformanceCounter(&li)
}