少年阿賓

          那些青春的歲月

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            500 Posts :: 0 Stories :: 135 Comments :: 0 Trackbacks
              1)ArrayBlockingQueue:規定大小的BlockingQueue,其構造函數必須帶一個int參數來指明其大小.其所含的對象是以FIFO(先入先出)順序排序的.

                  2)LinkedBlockingQueue:大小不定的BlockingQueue,若其構造函數帶一個規定大小的參數,生成的BlockingQueue有大小限制,若不帶大小參數,所生成的BlockingQueue的大小由Integer.MAX_VALUE來決定.其所含的對象是以FIFO(先入先出)順序排序的

                  3)PriorityBlockingQueue:類似于LinkedBlockQueue,但其所含對象的排序不是FIFO,而是依據對象的自然排序順序或者是構造函數的Comparator決定的順序.

                  4)SynchronousQueue:特殊的BlockingQueue,對其的操作必須是放和取交替完成的,是之前提過的BlockingQueue的又一實現。它給我們提供了在線程之間交換單一元素的極輕量級方法.

              其中LinkedBlockingQueue和ArrayBlockingQueue比較起來,它們背后所用的數據結構不一樣,導致LinkedBlockingQueue的數據吞吐量要大于ArrayBlockingQueue,但在線程數量很大時其性能的可預見性低于ArrayBlockingQueue. 

           http://www.2cto.com/kf/201212/175028.html

          posted on 2013-05-13 16:54 abin 閱讀(662) 評論(1)  編輯  收藏 所屬分類: HighConcurrency

          Feedback

          # re: Java多線程 BlockingQueue深入分析 2013-05-14 08:34 開發吧
          解析比較好,支持!  回復  更多評論
            

          主站蜘蛛池模板: 沈丘县| 买车| 宣威市| 凌源市| 扶余县| 瑞安市| 绿春县| 邵武市| 博白县| 唐山市| 土默特右旗| 洪泽县| 新余市| 平潭县| 海丰县| 华容县| 阳朔县| 利川市| 平果县| 上杭县| 沁水县| 靖远县| 洪雅县| 庐江县| 故城县| 盐源县| 宜兴市| 景泰县| 启东市| 中江县| 呼伦贝尔市| 佛冈县| 保德县| 曲靖市| 酒泉市| 兰坪| 靖江市| 龙川县| 黑水县| 内江市| 都江堰市|