在<Windows核心编程>一书中,是这样写的:
使用Sleep, 线程可以告诉系统,在一段时间内自己不需要调度。
Sleep函数的原型:
void Sleep(DWORD dwMilliseconds);
使用这个函数需要注意几点:
1、使用Sleep函数,将使线程自愿放弃属于它的时间片中剩下的部分。
2、系统设置线程不可调度的时间只是“近似于”所设定的毫秒数。
3、可以将dwMilliseconds的值设置为INFINITE。只是告诉系统永远不要调用此线程。
4、可以将dwMilliseconds的值设置为0。这个是告诉系统,主调线程放弃了时间片的剩余部分,强制
系统调用其他线程。注意:系统有可能重新调用刚刚调用了Sleep的那个线程,如果咩有相同或者
有较高优先级的可调度线程时,就会发生这种事情。