在Win32上如何将线程移动到另一个CPU核心?

hyp*_*gic 7 c c++ winapi multithreading multicore

我想确保一个线程被移动到一个特定的CPU核心,并且永远不会被调度程序从它移动.

有一个SetThreadAffinityMask()电话,但没有GetThreadAffinityMask().

我需要这个的原因是因为如果调度程序将该线程移动到另一个CPU,高分辨率计时器将被搞砸.

Ken*_*Ken 10

您应该只使用SetThreadAffinityMask并相信它正在工作.

MSDN