• <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
            誤人子弟啊
            亚洲精品tv久久久久久久久| 久久国产香蕉一区精品| 人妻中文久久久久| 久久精品女人天堂AV麻| 国产午夜精品理论片久久| 久久精品国产精品亚洲人人| 久久精品国产亚洲av瑜伽| 久久久久人妻一区精品| 综合久久久久久中文字幕亚洲国产国产综合一区首| 夜夜亚洲天天久久| 久久乐国产精品亚洲综合| 亚洲伊人久久综合影院| 久久天天躁狠狠躁夜夜网站| 久久久久久久尹人综合网亚洲 | 青草久久久国产线免观| 欧美粉嫩小泬久久久久久久 | 色综合久久夜色精品国产| 伊人久久大香线蕉综合影院首页 | 亚洲人成无码久久电影网站| 久久国语露脸国产精品电影| 久久这里只精品国产99热| 久久精品国产99国产精品| 亚洲精品乱码久久久久久自慰| 99久久无色码中文字幕| 亚洲色欲久久久久综合网| 99久久99这里只有免费的精品| 久久久久无码精品国产app| 亚洲va久久久噜噜噜久久天堂| 51久久夜色精品国产| 久久人人爽人人爽人人片AV不 | 亚洲午夜久久久影院伊人| 国产精品久久久久影视不卡| 奇米影视7777久久精品人人爽| 18岁日韩内射颜射午夜久久成人| 国内精品人妻无码久久久影院导航| 免费国产99久久久香蕉| 麻豆一区二区99久久久久| 色老头网站久久网| 亚洲国产成人久久综合区| 9999国产精品欧美久久久久久| 久久久久久人妻无码|