• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Prayer

            在一般中尋求卓越
            posts - 1256, comments - 190, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            linux進程間的同步方法

            Posted on 2009-04-20 11:27 Prayer 閱讀(4065) 評論(3)  編輯 收藏 引用 所屬分類: LINUX/UNIX/AIX

            進程間通訊(IPC)方法主要有以下幾種:   
                管道/FIFO/共享內存/消息隊列/信號  

            1.管道中還有命名管道和非命名管道(即匿名管道)之分,非命名管道(即匿名管道)只能用于父子進程通訊,命名管道可用于非父子進程,命名管道就是FIFO,管道是先進先出的通訊方式    

            2.消息隊列是用于兩個進程之間的通訊,首先在一個進程中創建一個消息隊列,然后再往消息隊列中寫數據,而另一個進程則從那個消息隊列中取數據。需要注意的是,消息隊列是用創建文件的方式建立的,如果一個進程向某個消息隊列中寫入了數據之后,另一個進程并沒有取出數據,即使向消息隊列中寫數據的進程已經結束,保存在消息隊列中的數據并沒有消失,也就是說下次再從這個消息隊列讀數據的時候,就是上次的數據!!!!    

            3.信號量,它與WINDOWS下的信號量是一樣的,所以就不用多說了    

            4.共享內存,類似于WINDOWS下的DLL中的共享變量,但LINUX下的共享內存區不需要像DLL這樣的東西,只要首先創建一個共享內存區,其它進程按照一定的步驟就能訪問到這個共享內存區中的數據,當然可讀可寫      

            以上幾種方式的比較:    

            1.管道:速度慢,容量有限,只有父子進程能通訊    

            2.FIFO:任何進程間都能通訊,但速度慢    

            3.消息隊列:容量受到系統限制,且要注意第一次讀的時候,要考慮上一次沒有讀完數據的問題    

            4.信號量:不能傳遞復雜消息,只能用來同步    

            5.共享內存區:能夠很容易控制容量,速度快,但要保持同步,比如一個進程在寫的時候,另一個進程要注意讀寫的問題,相當于線程中的線程安全,當然,共享內存區同樣可以用作線程間通訊,不過沒這個必要,線程間本來就已經共享了同一進程內的一塊內存

            Feedback

            # re: linux進程間的同步方法  回復  更多評論   

            2012-11-12 09:28 by xcf
            文不對題!誤人子弟!

            # re: linux進程間的同步方法  回復  更多評論   

            2013-05-04 21:35 by konyel@163.com
            哥 這是數據交換 不是同步 樓上說得對 誤人子弟

            # re: linux進程間的同步方法[未登錄]  回復  更多評論   

            2014-01-17 16:47 by xxxx
            誤人子弟啊
            亚洲AV成人无码久久精品老人| 久久久精品免费国产四虎| 香蕉aa三级久久毛片| 久久久久99这里有精品10| 色综合久久久久无码专区| 久久亚洲综合色一区二区三区| 国产日韩久久久精品影院首页| 噜噜噜色噜噜噜久久| 91久久精品91久久性色| 久久影视国产亚洲| 久久精品亚洲日本波多野结衣 | 一级做a爰片久久毛片毛片| 久久精品国产99国产精品亚洲| 狠狠88综合久久久久综合网| 久久久久这里只有精品 | 国产精品久久国产精麻豆99网站 | 久久人人爽人人爽人人爽| 88久久精品无码一区二区毛片| 久久成人国产精品免费软件| 久久久久女教师免费一区| 久久精品99久久香蕉国产色戒| 麻豆av久久av盛宴av| 国产精品熟女福利久久AV | 久久久精品久久久久特色影视 | 久久婷婷是五月综合色狠狠| 2022年国产精品久久久久| 好久久免费视频高清| 久久综合久久综合久久综合| 久久99热精品| 久久国产精品国语对白| 亚洲国产成人精品91久久久 | 国产精品9999久久久久| 东方aⅴ免费观看久久av| 亚洲精品99久久久久中文字幕| 久久久精品波多野结衣| 国产激情久久久久影院老熟女| 久久婷婷久久一区二区三区| 国产精品无码久久综合| 69SEX久久精品国产麻豆| 久久久女人与动物群交毛片| 99久久精品国产高清一区二区 |