聶永的博客

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

          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 閱讀(693) 評論(0)  編輯  收藏 所屬分類: Java

          公告

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

          新浪微博,歡迎關注:

          導航

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

          統計

          常用鏈接

          留言簿(58)

          隨筆分類(130)

          隨筆檔案(151)

          個人收藏

          最新隨筆

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 顺昌县| 丰城市| 苍山县| 桂阳县| 宜阳县| 尼勒克县| 资源县| 徐州市| 石城县| 莎车县| 新源县| 四子王旗| 泰兴市| 容城县| 河西区| 民乐县| 甘德县| 师宗县| 信阳市| 肇东市| 镇赉县| 司法| 普格县| 吴川市| 兰西县| 惠水县| 新龙县| 永吉县| 秭归县| 南京市| 大埔县| 德惠市| 龙门县| 易门县| 康保县| 抚顺县| 高青县| 长垣县| 桃源县| 平武县| 阿尔山市|