1. 多任務實現方法根據操作系統是否隨時地能中止程序的運行,可以分為兩類。可以隨時中止的稱為preemptive multitasking,如UNIX/Linux,OS X,Windows NT/XP,以及Windows 9x下的32位程序。不能的則被稱為cooperative multitasking,如Windows 3.x和Mac OS 9,已經一些手機上的系統。后者有一個嚴重的缺陷,當運行的程序不交出控制權的時候,整個系統就掛起了。
          多線程則更深入了一步,單獨的程序同時執行多個任務。
          兩者的差異在于,每個進程擁有屬于自己的完整的變量群,而線程則享有相同的數據。

          2. 運行線程的簡單步驟

          1) 繼承Runnable接口
          public interface Runnable
          {
          void run();
          }
          class MyRunnable implements Runnable
          {
          public void run()
          {
          task code
          }
          }
          2. 創建該類的實例
          Runnable r = new MyRunnable();
          3. 通過這個實例創建一個線程
          Thread t = new Thread(r);
          4. 運行該線程
          t.start();

          另外,也可以通過繼承Thread類并覆蓋run()方法實現,但并不提倡,因為太多單獨的線程很耗資源。

          3. 不要直接調用run()方法


          posts - 403, comments - 310, trackbacks - 0, articles - 7
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          2.25 Java notes - Multithreading

          Posted on 2007-04-22 20:25 ZelluX 閱讀(227) 評論(0)  編輯  收藏 所屬分類: OOP
          2007-02-25 14:09:11
          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 登封市| 得荣县| 潮安县| 米林县| 乐都县| 福建省| 库尔勒市| 曲水县| 海兴县| 长乐市| 铜川市| 高雄市| 同德县| 玛多县| 台北县| 凤山县| 湘潭市| 鹿邑县| 嘉兴市| 清水河县| 德令哈市| 昭通市| 常山县| 托里县| 天柱县| 武平县| 板桥市| 通山县| 麦盖提县| 眉山市| 额济纳旗| 邵阳县| 麟游县| 长治县| 浦城县| 马尔康县| 太保市| 阳高县| 四平市| 宁阳县| 横峰县|