2024年3月22日发(作者:)
`SetProcessAffinityMask` 是一个 Windows API 函数,用于设置
当前进程的 CPU 亲和性。该函数的参数定义如下:
```c
BOOL SetProcessAffinityMask(
HANDLE hProcess,
DWORD dwProcessAffinityMask
);
```
参数说明:
1. `hProcess`:一个句柄,标识要设置 CPU 亲和性的进程。通常,
你可以使用 `GetCurrentProcess` 函数来获取当前进程的句柄。
2. `dwProcessAffinityMask`:一个 32 位的掩码,用于设置进程
的 CPU 亲和性。掩码中的每一位都代表一个 CPU 核心,其中 0 表
示该核心不可用,1 表示该核心可用。例如,如果你希望进程只运
行在第一个 CPU 核心上,可以将掩码设置为 `0x00000001`。
返回值:
* 如果函数成功执行,返回值为非零值。
* 如果函数执行失败,返回值为零。要获取扩展的错误信息,可以
调用 `GetLastError` 函数。
使用 `SetProcessAffinityMask` 可以帮助你控制进程在哪些 CPU
核心上运行,这在多核处理器上尤其有用,可以优化性能或实现特
定的功能。但请注意,该函数只在 Windows 系统上可用。


发布评论