隨想錄(基於記憶體對映的程序通訊)

2021-06-06 17:18:28 字數 1124 閱讀 8587

在通訊協議的開發中,有的時候為了本地除錯的需要,需要實現程序之間的通訊。在windows系統中,程序通訊的方式很多,比如說有管道通訊、記憶體對映、socket通訊、剪下板通訊等等。但是,其中,我認為最好的方式還是記憶體對映的方式,簡單、明了。因為通訊的資料是被很多程序共享的,所以必要的互斥措施是非常必要的。只要處理好互斥的關係,記憶體對映可以為我們做好不少事情。

服務端**如下所示,

#include #include #include #define buf_size 256

lptstr szname = text("mapobject");

lptstr szmsg = text("msg");

void main(int argc, char* argv)

pbuf = (lpstr)mapviewoffile(hmapfile,

file_map_all_access,

0,0,

buf_size);

if(null == pbuf)

copymemory(pbuf, szmsg, strlen(szmsg));

getch();

unmapviewoffile(pbuf);

closehandle(hmapfile);

}

客戶端**如下,

#include #include #include #pragma comment (lib, "user32.lib")

#define buf_size 256

lptstr szname = text("mapobject");

void main(int argc, char* argv)

pbuf = (lpstr)mapviewoffile(hmapfile,

file_map_all_access,

0,0,

buf_size);

if(null == pbuf)

printf(pbuf);

unmapviewoffile(pbuf);

closehandle(hmapfile);

}

隨想錄(uclibc的學習)

對於交叉工具鏈來說,uclibc一般都是包括在工具鏈裡面的。通過uclibc,大家可以像開發x86使用者程式一樣,開發其他cpu上的應用程式。uclibc相比較glibc而言,包含的檔案較少,功能也有刪減,且每乙個目錄代表乙個動態庫,閱讀起來基本不會遇到什麼問題。1 uclibc的 怎麼看?建議直接...

隨想錄(epoll的使用)

要說linux下面最好用的介面恐怕就是epoll了。不管是網路程式設計,還是其他pipe程式設計,使用epoll都很方便。而且,epoll的函式個數少,結構也非常簡單。一般只要學好了epoll create epoll ctl epoll wait close這四個函式就可以了。如果大家有這方面的需...

隨想錄(招聘怎樣的員工)

對很多it公司來說,招聘都是一件大事。無論是校園招聘 社會招聘,公司都會投入到很大的人力和財力來開展招聘工作。乙個公司的人員構成,很大程度上決定了這個公司的業務形態 發展模式和未來前景,小公司是這樣,大公司也是這樣。一般來說,it招聘的人員很多很雜,比如說有銷售 商務 研發 行政 物流 財務等等,這...