程序間通訊的問題,一個程序間通訊的問題。

2022-11-29 15:45:08 字數 957 閱讀 2497

1樓:

如果是零或一的話辦法會多一點。

首先是通過一個公共的dll,在其中設立共享節;

其次通過記憶體對映、管道、socket、登錄檔或檔案等,另類點的還可以通過某公共視窗的gwl_userdata,模擬某不常用鍵盤按鍵的狀態等;

再次是我推薦使用的方法,設定一個手動重置的全域性命名事件,約定有訊號為1,無訊號為0,一個程序通過setevent、resetevent給事件設定訊號,另外一個程序開啟命名物件,並通過waitforsingleobject等待時間傳0來檢測時間狀態,有訊號會立即返回wait_object_0,無訊號會立即返回wait_timeout。這種方式我認為最為可行,且比前面敘述的集中方式更快。

希望上述資訊對你有用。

2樓:

寫硬碟的方法當然不好。

程序間通訊的方法很多,常見的有:共享記憶體,管道,套接字,訊號 這4種。

本人實際應用過管道,套接字,訊號這3種,共享記憶體沒用過,不表態,反正書上寫了有。

目前看來socket的方法比較好,本人工作很雜,vxworks,linux,windows可能都涉及,管道和訊號相容性不好,移植很麻煩,socket寫完了,只要用的是標準的**,貼上拷貝就ok了,還能隨時改成多機程序間通訊,我個人推薦socket方案,根據你的實際需要選擇一種吧。

3樓:

樓上的回答都挺不錯的。建議你用管道,畢竟管道比較簡單易懂。你在孫鑫的書「vc++深入詳解」中,就能學會。

你要是之前學過socket的話,可以用socket,但如果之前沒有接觸過,想搞懂就得好幾天才行。

4樓:匿名使用者

可參考windows核心程式設計指南 17.1.2 在可執行檔案或d l l的多個例項之間共享靜態資料

5樓:100°天君

記憶體對映吧,不難的,網上一找一堆例子,例如去csdn

ospf多程序互相通訊的問題,ospf多程序互相通訊的問題

不懂就問同學,問老師,大家都是學技術的,為了自己的前途考慮,沒必要在網上抄。在下面的那兩個abr上,把ospf 2,從分發到opsf 1裡,opsf 1 從分發到ospf 2中,就可以了 不同的ospf程序怎麼進行互相通訊 ospf程序號只對路由器本身有效,不同路由器之間ospf通訊是通過相互的鄰居...

程序進入臨界區的排程原則是什麼,一個程序進入臨界區的排程原則是什麼

程序進入臨界區的排程原則是 如果有若干程序要求進入空閒的臨界區,一次僅允許一個程序進入。任何時候,處於臨界區內的程序不可多於一個。如已有程序進入自己的臨界區,則其它所有試圖進入臨界區的程序必須等待。進入臨界區的程序要在有限時間內退出,以便其它程序能及時進入自己的臨界區。如果程序不能進入自己的臨界區,...

佔用很高電腦效能的系統程序,一個佔用很高電腦效能的系統程序?

若是您還安裝有其它的防毒軟體,不用就卸了它。windows defender是微軟系統內建的防毒軟體,但是windows defender掃描時佔用系統資源過高,甚至導致磁碟佔用率100 的問題,因此關閉windows defender能讓電腦執行更流暢。關閉方法如下 1 點選桌面開始選單,進入設定...