<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 39,  comments - 44,  trackbacks - 0
              J2SE 5.0中的Java.util.concurrent程序包提供了一個新的線程框架組件,這個框架組件處理了與建立、執行和管理線程相關的很多低層細節信息。在本文中我們將細致地了解一下它的重要特性。

      如果你使用C、C++或Java先前的版本進行多線程編程,就知道在代碼中管理線程是多么頭疼的事情。在單線程程序中,代碼中引起應用程序失敗的bug每次都在同一個點出現。但是在多線程程序中,只有某些原因遇到一起的時候才會出現失敗。由于預見可能引發應用程序失敗的所有條件是非常困難的,所以多線程編程是有挑戰性的。有些程序員從根本上避免這種挑戰,而另外一些--聰明的解決問題的人員--則一直坐在他們的計算機面前直到問題解決。

      J2SE 5.0平臺包含了一個新的并發工具程序包。這個程序包中的類替并發類(concurrent classe)或并發設計中使用的應用程序建立阻塞(blocking)。該并發工具包含下面一些內容:

      · 高性能的、靈活的線程池

      · 異步執行事務的框架組件

      · 為并發訪問優化過的集合類宿主(host)

      本文介紹了J2SE 5.0框架組件類和它們的重要特性。本文的下載代碼提供了一些簡單的、容易使用的示例,它演示了所有的新線程框架組件類。你在閱讀文章內容之后運行這些示例可以使自己對這些特性有更好的理解。

      Executor(執行器)框架組件

      Executor框架組件提供了一個簡單的、標準的、可擴充的類,它提供了一些有用的功能,如果沒有這些功能,我們要手工實現這些它們,會覺得十分單調和困難。該框架組件使調用、調度和執行的操作標準化了。它通過一組執行策略為控制異步事務提供了支持。

      Executor接口執行已提交的可以運行的事務。它提供了一條途徑,允許我們把事務提交從事務執行機制中分離出來。程序員通常使用Executor代替顯式地(explicitly)建立線程。Executor接口也提供事務的同步和異步執行。

      對于同步執行,使用下面的命令:

    Class MySynExecutor implements Executor{
     public void execute(Runnable r) {
      r.run();
     } 
    }

      對于異步執行,使用下面的命令:

    Class MyASynExecutor implements Executor{
     public void execute(Runnable r) {
      new Thread(r).start();
     }
    }

      ExecutorService(執行器服務)類

      ExecutorService類為管理一個或多個異步事務的終止和跟蹤事務執行的過程提供了方法。代碼下載中的MyExecutorService.java文件演示了管理事務終止的過程。它初始化了大小為三個的線程池,然后依次添加了線程。當線程的數量達到線程池的大小限制時,它調用關閉(shutdown)方法。在調用shutdown()方法之后,這個線程池不再接受新事務的執行。在等待十秒以后,該線程池調用shutDownNow()。這個方法會盡最大的努力來終止所有運行中的事務。在示例中,應用程序試圖終止運行中的線程失敗了。

      ScheduledExecutorService(調度執行器服務)

      ScheduledExecutorService類是我的最喜歡的類。它對于調度那些周期性執行的事務非常方便,而周期性執行的事務對于清除工作(例如清除你的應用程序建立的臨時文件等等)尤其有用。下載代碼中的MyScheduledExecutorService.java文件通過每五秒鐘發出"嘟嘟"一聲演示了調度的過程:

    final Runnable beeper = new Runnable() {
     public void run() { System.out.println("beep"); }
    };
    final ScheduledFuture beeperHandle =scheduler.scheduleAtFixedRate(beeper, 1, 5, SECONDS);
    posted on 2008-01-20 01:43 礦礦 閱讀(2383) 評論(3)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产精品免费看久久久久| 成全影视免费观看大全二| 一级做a免费视频观看网站| 免费无码婬片aaa直播表情| 怡红院免费的全部视频| 国产精品视频免费观看| 国产精品免费视频播放器| 亚洲日韩精品国产一区二区三区| 免费一级全黄少妇性色生活片| 四虎免费影院4hu永久免费| 亚洲精品美女在线观看| 成人a毛片视频免费看| 无码国产精品一区二区免费虚拟VR| 国产男女猛烈无遮挡免费视频网站 | 国产成人精品免费视频大全| 91精品国产免费| 免费成人在线观看| 亚洲伊人久久大香线蕉影院| 日韩一级片免费观看| 伊人久久大香线蕉亚洲五月天 | 亚洲精选在线观看| 国产成人亚洲精品播放器下载 | 亚洲国产综合人成综合网站00| 国产无限免费观看黄网站| 在线播放免费人成视频在线观看| 亚洲AV综合色区无码一区| 337P日本欧洲亚洲大胆精品| 美女被免费喷白浆视频| 亚洲国产精华液2020| 日韩免费a级毛片无码a∨| 亚洲色欲www综合网| 永久免费A∨片在线观看| 亚洲午夜爱爱香蕉片| 亚洲国产AV一区二区三区四区| 免费人成年激情视频在线观看| 成全在线观看免费观看大全| 亚洲免费人成视频观看| 亚洲AV无码乱码精品国产| 人人爽人人爽人人片A免费| 亚洲国产精品自在在线观看| 在线免费一区二区|