如何在不同的核心上运行不同的线程?

时间:2011-09-25 10:07:51

标签: c++ multithreading pthreads

  

可能重复:
  how to set CPU affinity of a particular pthread?

我正在编写一个c ++程序,在Ubuntu中使用g ++编译器。我的程序中有4个线程,CPU上有4个内核。我想确保每个线程都在不同的核心上运行。我很少熟悉pthread。

2 个答案:

答案 0 :(得分:16)

不要这样做。让系统安排线程。如果您将线程关联到不同的核心,则只会妨碍调度程序。当您的应用程序是唯一消耗CPU的应用程序时,调度程序将自然地将每个线程安排在单独的核心上。

答案 1 :(得分:5)