2017-03-21 12 views
0

스레드 A가 두 개의 다른 스레드가 사용할 Object (Oa)를 생성한다고 가정합니다. 스레드 B는 Oa에 쓰고 스레드 C는 Oa에서 읽습니다. 스레드 A, B 및 C는 각각 CPU 선호도를 사용하여 CPU 1,2,3에 잠겨 있습니다.세 번째 스레드에서 생성 된 개체에 액세스하는 두 스레드에 관련된 오버 헤드는 무엇입니까? 각 스레드마다 다른 CPU 선호도 (C++ 및 linux)가 있습니까?

하나의 CPU에서 작성되었지만 다른 두 CPU에서 액세스 되었기 때문에 Oa에서 메소드를 실행하는 데 필요한 오버 헤드/활동은 무엇입니까?

이 질문은 (고정되는) 데이터에 액세스 대 명령

답변

0

나는 당신이 CPU 특정 약 Cache Coherence을 요청하는 생각을 실행에 대한 자세한 내용을 관련이 있습니다. 기본적으로 각 CPU에는 해당 데이터의 캐시 된 값이 있습니다. 데이터에 대한 모든 변경 사항은 다른 CPU로 전달됩니다.