作者neigence ()
站內C_and_CPP
標題[問題] boost <-> mfc interprocess
時間Sat Jul 10 16:23:44 2010
最近在研究interprocess的東西
在網路上找到 mfc server to mfc client 使用shared memory的方式來完成
server的部分做read的動作 而client做write的動作
server端 : 虛擬碼
HANDLE event = ::CreateEvent("aaa");
WaitForSingleObject(event);
read from shared memory ....
client 端 : 虛擬碼
HANDLE event = ::CreateEvent("aaa");
write to shared memory ...
SetEvent(event);
------------------------------------------------------------------
客戶端寫完送出event (看來 只要同名字的event就可以誇process ? )
而server端等到有event後就做讀取的動作
這機制我大概還可以明白 但 如果我server端要換成boost
請問 我有辨法做類似mfc這個 CreateEvent 和 WaitForSingleObject的行為嗎
剛才在看boost的doc只有看到 mutex跟condition之類的 但沒有發現event
我持續在研讀中 但我怕event這東西是windows平台特有的 boost沒有....
或是 有其他的機制可以完成 不一定要透過EVENT... 不好意思 對ipc也是剛學不久
所以 還是一團混亂 謝謝回答
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 115.43.136.97
※ 編輯: neigence 來自: 115.43.136.97 (07/10 16:30)
→ hilorrk:看到event 差點直接推signal..XD 07/10 17:36
→ Chikei:condition就是你要的 07/10 22:24
→ james732:CreateEvent那兩個function不是MFC獨有,而是Win32API 07/10 22:48
→ james732:就算用boost 仍然可以 #include <windows.h> 來使用 07/10 22:48
推 goodGG:boost 是跨平台的 library,不行就 call Win32/Vista/..API 07/11 00:51
推 avhacker:condition 比 event 好用太多了 07/12 12:53