如果我这样做:CreateThreads,setsched_affinity为CPU 0,那么所有线程也会对CPU 0有亲和力 如果相反我首先反转动作序列,即set_schedaffinity然后创建线程,线程是否具有亲和力
我正在使用pthreads库创建线程。谢谢你的回答
答案 0 :(得分:2)
sched_setaffinity()
调用是特定于Linux的,所以这个答案适用于那里。
对sched_setaffinity()
的调用仅影响单个线程。使用pthread_create()
创建的线程将继承其父级的CPU关联掩码。
这意味着如果在创建其他线程后更改当前线程的亲缘关系,则它们的相关性将保持默认值;但如果按相反顺序执行,它们将继承更改的亲和集。