首页 > 解决方案 > sched_setaffinity() 对新线程的影响

问题描述

当从“主”进程调用时,是否sched_setaffinity()会影响从该运行进程创建新线程的运行核心?

据我所知,调用后创建的所有线程sched_setaffinity()总是在“主”进程设置为运行的同一个核心上创建。这是我每次执行程序时都可以依赖的事情吗?

在下面的伪代码中,是否保证threadA、threadB和threadC总是运行在同一个内核上?

int main()
{
   sched_setaffinity(...);
   threadA = std::thread();
   threadB = std::thread();
   threadC = std::thread();
}

标签: c++linuxmultithreadingaffinity

解决方案


推荐阅读