2012-10-25 3 views
5

나는 C++의 동시 프로그래밍에서 초보자입니다. 스레드가 (읽기 전용 인) 스레드 풀 패턴을 기반으로 서버를 (리눅스 상자에서) 코딩하고 싶습니다. 공유 메모리 내가 그들이 읽기 전용 메모리에 액세스하는 방법과 어쩌면 메모리 맵 파일을 사용하여 (할 때 뭔가 를 스레드를 동기화하기 위해 수행해야하는 경우 궁금 :( 매우 혼란 스러워요 들어오는 요청공유 읽기 전용 메모리가있는 C++ 스레드 풀

답변을?)

+1

의 pthreads ... HTTP : 스레드를 동기화 //www.cs.nmsu.edu/~jcook/Tools/pthreads/library.html...to 당신은 공유에 액세스 할 수 조인 방법을 사용할 수 있습니다 기억 – subodh1989

답변

1

데이터가 읽기 전용이면 읽기 스레드를 동기화 할 필요가 없습니다. 쓰고있는 경우에만 수행하십시오. 또한 스레드는 부모의 메모리 공간을 공유하므로 공유 메모리 세그먼트 또는 이와 유사한 것을 만들 필요가 없습니다.

http://en.wikipedia.org/wiki/Thread_safety

1

나는 C++ 11 멀티 쓰레딩에 대해 아주 좋은 기사를 알고있다. - Read it . 파트 4에서는 공유 컨테이너 구현 및 설명을 볼 수 있습니다.