2011-04-07 2 views
0

이렇게하면 CreateThreads, CPU0에 setsched_affinity가 설정되고 모든 스레드도 CPU에 대한 선호도를가집니다 0 대신에 즉 set_schedaffinity 작업을 먼저 수행 한 다음 스레드를 생성하면 스레드는 친 화성을 갖게됩니까프로세스에서 sched_setaffinity를 수행하면 스레드에 의해 생성 된 스레드가 영향을받습니다.

pthreads 라이브러리를 사용하여 스레드를 생성하고 있습니다. 모든 답변 주셔서 감사합니다

답변

2

sched_setaffinity() 전화는 Linux에 따라 다르기 때문에이 답변이 거기에 적용됩니다.

sched_setaffinity()에 대한 호출은 단일 스레드에만 영향을줍니다. pthread_create()으로 생성 된 스레드는 부모의 CPU 선호도 마스크를 상속받습니다.

즉, 다른 스레드를 만든 후에 현재 스레드의 선호도를 변경하면 선호도가 기본값으로 유지됩니다. 역순으로 처리하면 변형 된 선호도 집합을 상속받습니다.

관련 문제