0
有一個衆所周知的算法,使用純WinAPIs/C++在Windows平臺上採用單個進程的線程之間讀取器/寫入器鎖定同步:多閱讀器,在Windows的進程之間單寫同步鎖與WinAPI的/ C++
對我來說,我需要幾道工序之間做到這一點,即作者是在一個過程中,讀者都在其它進程。任何想法如何做到這一點?
PS。我需要這個已經開發的項目,所以我不能使用除C++/MFC或純WinAPI以外的其他任何東西。換句話說,我不能使用Boost或類似的擴展。
謝謝。全球命名的互斥鎖的確可以解決臨界區問題。但我主要關心的是'm_cReaders'計數器,因爲EnterReader()/ LeaveReader()將從不同的讀者進程調用。那麼你如何實現呢? – ahmd0
@ ahmd0:只要把你的櫃檯在[共享內存區(http://msdn.microsoft.com/en-us/library/windows/desktop/aa366551%28v=vs.85%29.aspx)。給你的事件一個名字,然後它應該工作。 – mkaes
是的,我正在做。但是我遇到了這樣一個問題。如果我只是像在樣本中一樣增加或減少閱讀器計數器,如果其中一個閱讀器進程崩潰並且不減少其計數器,我可以遇到「情況」。這種情況會使我的機制陷入僵局。 – ahmd0