• <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++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            多進程同時從消息隊列取消息的問題

            Posted on 2008-08-26 15:01 Prayer 閱讀(6337) 評論(0)  編輯 收藏 引用 所屬分類: LINUX/UNIX/AIX
            我現(xiàn)在有一個程序,是做成了多進程同時從一個消息隊列中取消息,都以阻塞的方式,從消息隊列中順序取消息,但是多進程同時取的時候我沒有加鎖,不知道這樣會不會出現(xiàn)什么問題?操作系統(tǒng)應(yīng)該對進程有個排隊的操作吧?
            不會有什么問題,OS保證操作的原子性,即不可能出現(xiàn)一條消息被幾個進程各收取一部分的情況。但具體是哪個進程收到消息則是隨機的。

            我在寫一個程序,父進程負責(zé)循環(huán)從消息隊列中讀取消息,如果有消息則生成子進程處理消息并將處理結(jié)果寫入另一消息隊列,而主進程繼續(xù)讀取消息,這樣有很多消息時就會并發(fā)出很多子進程處理消息并寫入同一消息隊隊列,我想問一下
            在多個子進程同時向一個消息隊列寫時要不要進行互斥操作?請有經(jīng)驗的高手不吝賜教,非常感謝!
            消息隊列是個隊列,送進去的消息會排隊,所以不會有“同一個消息”的情況
            讀操作是根據(jù)mtype來區(qū)分不同的消息的,當(dāng)某個消息寫入后,如果讀進程退出了,這個消息會堵在消息隊列里,多了就會造成消息隊列堵塞,任何進程寫消息隊列都會失敗,造成系統(tǒng)的不可用,這時要注意讀、寫進程的配合,這也是用消息隊列最不爽的地方!
            還有,好象消息隊列不支持peek的方法?
            我以前做過這樣一個程序,因為要寫到一個文件中的不同段中,所以用了這種方式,要注意的一點就是程序異常退出之后需要對該隊列做相應(yīng)處理。
            請教多進程寫消息隊列問題

            消息隊列不必互斥。
            老司机国内精品久久久久| 人妻无码精品久久亚瑟影视| 久久精品国产久精国产| 99久久精品国产一区二区| 狠狠色丁香久久婷婷综合蜜芽五月| 国产aⅴ激情无码久久| 国产精品美女久久久网AV| 亚洲国产精品无码久久一线| 国产精品热久久毛片| 久久久久女人精品毛片| 久久综合伊人77777麻豆| 国内精品伊人久久久久| 久久AV无码精品人妻糸列| 久久精品亚洲欧美日韩久久| 丰满少妇人妻久久久久久| 狠狠色狠狠色综合久久| 婷婷国产天堂久久综合五月| 国产日韩久久免费影院| 久久精品国产福利国产秒| 无码人妻久久久一区二区三区 | 69SEX久久精品国产麻豆| 无码八A片人妻少妇久久| 国内精品免费久久影院| 日本福利片国产午夜久久| 久久精品水蜜桃av综合天堂| 久久久久久国产精品美女| 久久亚洲精品无码播放| 国产午夜电影久久| 亚洲国产精品久久久久久| 久久婷婷综合中文字幕| 国产69精品久久久久777| 久久99国产精品久久99果冻传媒 | 青青草原精品99久久精品66| 久久久久久亚洲精品影院| 亚洲午夜无码久久久久小说| 欧美精品丝袜久久久中文字幕| 久久91这里精品国产2020| 久久亚洲国产成人精品无码区| 亚洲午夜久久久| 日韩人妻无码精品久久免费一| 成人妇女免费播放久久久|