2013-05-18 2 views
-2

네이티브 C++ 작업 만 사용하여 여러 프로세스에서 액세스 할 수있는 공유 메모리를 할당하려면 어떻게합니까? 또는 내 OS API를 사용해야합니까? 예 : 뮤텍스 및 세마포와 같은 스레드 간 동기화 객체의 경우? (당신은 뮤텍스 대신 bool을 사용할 수 없다는 것을 의미합니다.) OS에는 동기화를 구성하는 특정 유형이 있습니다.)네이티브 C++ 연산 만 사용하여 여러 프로세스에 대한 공유 메모리를 생성 하시겠습니까?

+7

네이티브 C++ 작업을 사용하여 프로세스를 만들 수도 없습니다 ... – kennytm

답변

4

"네이티브 C++에서만" "공유 메모리"또는 "프로세스"라는 개념이 없습니다. 그것들은 반드시 플랫폼 별 개념입니다.

Boost's Interprocess library은 유용한 추상화를 시도 할 수 있습니다.

1

기본적으로 OS API를 사용해야합니다. 그러나 공유 메모리에 대한 액세스를 구현하는 플랫폼 간 라이브러리 (예 : Boost)가 있습니다.