CPP WINDOWS:有微秒级的睡眠功能吗?

kak*_*ush 5 c++ windows sleep

我知道有毫秒(Sleep(milli))

但我找不到微..

bam*_*s53 6

VS 11 开发预览版包括处理线程的标准库部分。所以现在你可以说:

std::this_thread::sleep_for(std::chrono::microseconds(1));
Run Code Online (Sandbox Code Playgroud)

当然,这并不意味着线程将在恰好这个时间后唤醒,但它应该在平台(和库实现)允许的范围内尽可能接近。正如其他评论所指出的,Windows 实际上不允许线程休眠这么短的时间。


Lol*_*4t0 2

您可以使用rdtsc指令或QueryPerformanceCounterWindows API函数来获取高分辨率计数器。然后您可以使用GetTickCount、 或时间函数来校准它们。