首先可以调用GetSystemInfo查看有多少个CPU,再通过调用:
BOOL WINAPI SetProcessAffinityMask(
__in HANDLE hProcess,
__in DWORD_PTR dwProcessAffinityMask
);
第一个参数是代表要设置的进程,第二个参数是一个掩码,代表可以在哪个CPU上运行。例如:设置5(101)代表在第一个和第三个CPU上运行。
还有其他几个相关的函数:
BOOL WINAPI GetProcessAffinityMask(
__in HANDLE hProcess,
__out PDWORD_PTR lpProcessAffinityMask,
__out PDWORD_PTR lpSystemAffinityMask
);
DWORD_PTR WINAPI SetThreadAffinityMask(
__in HANDLE hThread,
__in DWORD_PTR dwThreadAffinityMask
);

本文介绍了如何使用Windows API函数SetProcessAffinityMask和SetThreadAffinityMask来设置进程和线程的CPU亲和性,即指定进程或线程可以在哪些CPU上运行。此外还提到了获取进程亲和性的函数GetProcessAffinityMask。
1713

被折叠的 条评论
为什么被折叠?



