目前正在将 Linux 应用程序移植到 Windows 中,我需要设置线程关联。
目前Linux的方法是:
pthread_setaffinity_np(curthread->threadID, sizeof(cpu_set_t), &curthread->coremask);
我需要用等效的 Windows 调用替换它。
我发现“SetThreadAffinityMask”方法是等效的 Windows 调用。可以用这个吗?如果是的话,如何放置这个调用的参数?
有人可以帮我解决这个问题。
目前正在将 Linux 应用程序移植到 Windows 中,我需要设置线程关联。
目前Linux的方法是:
pthread_setaffinity_np(curthread->threadID, sizeof(cpu_set_t), &curthread->coremask);
我需要用等效的 Windows 调用替换它。
我发现“SetThreadAffinityMask”方法是等效的 Windows 调用。可以用这个吗?如果是的话,如何放置这个调用的参数?
有人可以帮我解决这个问题。
可能有用的功能:
阅读MSDN 上的Multiple Processors and Processor Groups作为入门。
是的,这是正确的。但是你需要做一些额外的工作才能调用上面的微软API。请参考以下链接中的伪代码解释以实现相同的目的。