Re: [問題] process
我是之前有問這個問題的人,回一下當初我的作法好了
我是採用share memory的方式,已經過了很久,有些地方會忘記,請多包涵
1. 配置記憶體空間
CreateFileMapping,Handle請填0xFFFFFFFF,此位置會讓OS知道你要
配置Share Memory
2. 映射記憶體
MapViewOfFile
3. 另一個process連接此空間
OpenFileMapping,,可以自己指定這個空間的名字,這樣可以讓另一個process
利用名字抓到這個空間。
我的作法其實是一開始先用這個函式去抓指定的空間,如果發現沒有,就代表沒有
配置,直接執行1. 和 2.的步驟配置,如此就可以讓所有process共用同一個module,
所以我實際是312這樣
4. 通訊
這個部份要看個人自己的設計,我自己的作法是利用ring buffer的方式設了兩區,
Write和Read區,當寫完資料,或是讀完資料,才將index+1,所以只要一直比對
In index和Out index即可知道是否有資料或是已滿。我做了Rx和Tx個別的檢查函式,
讓上層的Timer定期呼叫。
另外就是要自己制定通訊的protocol,這樣就可以做到了。
不過第四點的作法是我自己當初想的,網路那時我沒有找到通訊後的作法,
如果有更好的方式,希望可以有人分享一下,增進知識。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.104.14.198
→
12/30 23:47, , 1F
12/30 23:47, 1F
→
12/30 23:49, , 2F
12/30 23:49, 2F
→
12/30 23:50, , 3F
12/30 23:50, 3F
→
12/30 23:51, , 4F
12/30 23:51, 4F
→
12/30 23:51, , 5F
12/30 23:51, 5F
推
01/01 19:15, , 6F
01/01 19:15, 6F
→
01/01 19:16, , 7F
01/01 19:16, 7F
→
01/01 19:17, , 8F
01/01 19:17, 8F
推
01/01 19:20, , 9F
01/01 19:20, 9F
推
01/01 19:21, , 10F
01/01 19:21, 10F
→
01/01 19:29, , 11F
01/01 19:29, 11F
→
01/01 22:56, , 12F
01/01 22:56, 12F
推
01/02 10:05, , 13F
01/02 10:05, 13F
討論串 (同標題文章)