亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

管道(Pipe)/createPipe

系統 2220 0

? BOOL CreatePipe(PHANDLE hReadPipe, // 指向讀句柄的指針
 PHANDLE hWritePipe, // 指向寫句柄的指針
 LPSECURITY_ATTRIBUTES lpPipeAttributes, // 指向安全屬性的指針
 DWORD nSize // 管道大小);

管道(Pipe)實際是用于進程間通信的一段共享內存,創建管道的進程稱為管道server,連接到一個管道的進程為管道客戶機。一個進程在向管道寫入數據后,還有一進程就能夠從管道的還有一端將其讀取出來。匿名管道(Anonymous Pipes)是在父進程和子進程間單向數據傳輸的一種未命名的管道,僅僅能在本地計算機中使用,而不可用于網絡間的通信。

管道server將lpPipeAttributes 指向的SECURITY_ATTRIBUTES數據結構的數據成員bInheritHandle設置為TRUE,那么CreatePipe()創建的管道讀、寫句柄將會被繼承

父進程能夠調用進程創建函數CreateProcess()生成子進程。假設父進程要發送數據到子進程,父進程可調用WriteFile()將數據寫入到管道(傳遞管道寫句柄給函數),子進程則調用GetStdHandle()取得管道的讀句柄,將該句柄傳入ReadFile()后從管道讀取數據。
  假設是父進程從子進程讀取數據,那么由子進程調用GetStdHandle()取得管道的寫入句柄,并調用WriteFile()將數據寫入到管道。然后,父進程調用ReadFile()從管道讀取出數據(傳遞管道讀句柄給函數)。

在用WriteFile()函數向管道寫入數據時,僅僅有在向管道寫完指定字節的數據后或是在有發生錯誤時函數才會返回。如管道緩沖已滿而數據還沒有寫完,WriteFile()將要等到還有一進程對管道中數據讀取以釋放出很多其它可用空間后才可以返回。管道server在調用CreatePipe()創建管道時以參數nSize對管道的緩沖大小作了設定。
  匿名管道并不支持異步讀、寫操作,這也就意味著不能在匿名管道中使用ReadFileEx()和WriteFileEx(),并且ReadFile()和WriteFile()中的lpOverLapped參數也將被忽略。匿名管道將在讀、寫句柄都被關閉后退出,也能夠在進程中調用CloseHandle()函數來關閉此句柄。

管道(Pipe)/createPipe


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 模特精品一区二区三区 | 中国一级毛片 | 四虎影视紧急入口地址大全 | 午夜在线网站 | 哪里有毛片 | 爆操在线 | 亚洲精品a| 国产美女久久久久 | 99热久久精品最新 | 真人女人一级毛片免费视频观看 | 久久久99精品免费观看精品 | 亚洲欧美午夜 | 精品亚洲一区二区 | 欧美精品久久久久久久免费观看 | 9久9久热精品视频在线观看 | 久久精品一区二区免费看 | julia在线播放 | 久热这里只有精品视频6 | 三区在线观看 | 尤物福利视频 | 国产一区视频在线播放 | 精品一久久香蕉国产线看观 | 国产免费不卡 | 亚洲视频在线观看视频 | 久久这里只有精品8 | 亚洲欧美专区精品久久 | 九九精品激情在线视频 | 夜夜精品视频一区二区 | 99综合色 | 青青久久国产 | 中文字幕在线观看免费视频 | 日日夜夜操操操 | 二性视频 | 91青娱乐在线 | 亚洲国产高清在线精品一区 | 国内精品美女久久久久 | 国产极品福利 | 午夜精品久久久久久久久 | 开心片色99xxxx| 亚洲国产日韩欧美一区二区三区 | 日本中文一区 |