1

我不知道如何在 C++ 中进行线程化,而且我不仅不想知道这一点,而且有没有办法可以将线程强制到不同的核心上?另外我怎么知道用户有多少个内核?

4

1 回答 1

4

将线程绑定到任意 CPU 称为设置亲和性。这是平台相关的操作。

对于 Windows:SetProcessAffinityMask

对于 pthreads:pthread_attr_setaffinity_np(3)pthread_setaffinity_np(3)

对于 Boost,您可以使用native_handle()获取特定于平台的线程句柄以将它们与上述功能一起使用。

于 2012-09-03T04:09:57.937 回答