聶永的博客

          記錄工作/學習的點點滴滴。

          Fork/Join模式(JSR166y)手記之Phaser

          這是一個綜合了CountDownLatch和CyclicBarrier特性的混合體,官方說靈活性非常高。基本上,只要對上面兩個熟悉,那么閱讀API,也不難快速上手的。
          yaofeng928 簡單總結其特點:
          Phaser同時包含CyclicBarrier和CountDownLatch兩個類的功能。Phaser的arrive方法將將計數器加1,awaitAdvance將線程阻塞,直到計數器達到目標,這兩個方法與CountDownLatch的countDown和await方法相對應;Phaser的arriveAndAwaitAdvance方法將計數器加1的同時將線程阻塞,直到計數器達到目標后繼續執行,這個方法對應CyclicBarrier的await方法。

          除了包含以上兩個類的功能外,Phaser還提供了更大的靈活性。CyclicBarrier和CountdownLatch在構造函數指定目標后就無法修改,而Phaser提供了register和deregister方法可以對目標進行動態修改。
          yaofeng928在他的博客文章中也提供了測試示范,有興趣著看看一看。
          在參考資料的第二個鏈接,則非常用心的給出對Phaser的用心解釋,絕對值得一看,不過其代碼存在些許錯誤,但對總體理解不產生障礙。

          參考資料鏈接1則給出了,各種使用場景。
          別人把自己所有想要理解的,基本都上說出來,不再需要單獨寫一篇,改成推薦好了。
          參考資料:
          1. What's New on Java 7 Phaser
          2. Java 7: 理解 Phaser
          3. 探索JDK7的并發編程——PHASER

          posted on 2012-02-07 17:34 nieyong 閱讀(692) 評論(0)  編輯  收藏 所屬分類: Java

          公告

          所有文章皆為原創,若轉載請標明出處,謝謝~

          新浪微博,歡迎關注:

          導航

          <2012年2月>
          2930311234
          567891011
          12131415161718
          19202122232425
          26272829123
          45678910

          統計

          常用鏈接

          留言簿(58)

          隨筆分類(130)

          隨筆檔案(151)

          個人收藏

          最新隨筆

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 仁寿县| 九台市| 盐山县| 石屏县| 南木林县| 东安县| 揭东县| 安吉县| 宁武县| 旬邑县| 如皋市| 琼中| 灵璧县| 曲水县| 纳雍县| 山阳县| 合水县| 罗平县| 洛浦县| 乌苏市| 巴彦淖尔市| 呈贡县| 麦盖提县| 两当县| 黄石市| 舞钢市| 公主岭市| 阿荣旗| 自贡市| 大石桥市| 交城县| 博罗县| 娱乐| 沅江市| 黄山市| 安宁市| 河北省| 仪陇县| 拉孜县| 陈巴尔虎旗| 九龙坡区|