독자에게 쓰레드에 대한 질문이 있었으며 과도하게 복잡하게하지 않으려 고했기 때문에 조언을 구하기 위해 여기에 왔습니다.C++ 세마포어 (읽기/쓰기)
필자는 궁극적으로 4 개의 스레드로 읽고 3을 쓰는 배열을 가지고 있습니다 (1 개의 판독기 3 개의 읽기/쓰기). 내 목표는 어떻게 든 모든 읽기 작업이 완료 될 때까지 모든 스레드를 차단하는 쓰기 작업을하는 동안 다른 스레드를 차단하지 못하게하는 것이 었습니다. 나는 스레드 당 하나의 세마포어로이를 수행하는 방법을 알고 있지만 실제로는 하나의 바이너리, 카운팅 또는 뮤텍스 세마포어 (또는 스레드 당 1 개 미만의 세마포어)로이를 수행하는 방법은 무엇인지 알고 있습니다. 나는 VxWorks 세마포어 라이브러리를 사용할 것이다.
이것은 실제로 불행히도 vxWorks 6.6 이상에서만 지원됩니다. 그렇지 않으면 다른 사람들처럼 "독자와 작가"문제인 것처럼 보입니다. – SirRoot