Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私がこれを行う場合: CreateThreads、setsched_affinity を CPU 0 にすると、すべてのスレッドも CPU 0 にアフィニティを持ちます。代わりに、一連のアクションを逆にした場合、つまり set_schedaffinity を最初に作成してからスレッドを作成すると、スレッドはアフィニティを持ちますか?
pthreads ライブラリを使用してスレッドを作成しています。回答ありがとうございます
このsched_setaffinity()呼び出しはLinux固有であるため、この回答はそこで適用されます。
sched_setaffinity()
の呼び出しsched_setaffinity()は、単一のスレッドにのみ影響します。で作成されたスレッドpthread_create()は、その親のCPUアフィニティマスクを継承します。
pthread_create()
これは、他のスレッドを作成した後に現在のスレッドのアフィニティを変更した場合、それらのアフィニティはデフォルトのままであることを意味します。ただし、逆の順序で実行すると、変更されたアフィニティセットが継承されます。