聶永的博客

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

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

          公告

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

          新浪微博,歡迎關注:

          導航

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

          統計

          常用鏈接

          留言簿(58)

          隨筆分類(130)

          隨筆檔案(151)

          個人收藏

          最新隨筆

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 阿克苏市| 锦屏县| 武冈市| 神池县| 边坝县| 民县| 沙河市| 田阳县| 普兰店市| 巫溪县| 红桥区| 安达市| 漳平市| 霞浦县| 汤阴县| 清丰县| 冷水江市| 越西县| 阿克陶县| 嫩江县| 武邑县| 睢宁县| 右玉县| 西宁市| 营山县| 宝应县| 夏河县| 织金县| 泰兴市| 会泽县| 大连市| 堆龙德庆县| 沐川县| 许昌市| 且末县| 海伦市| 金乡县| 屏东县| 兴安盟| 西丰县| 当涂县|