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
          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 永康市| 桂林市| 孟津县| 桐梓县| 双桥区| 彰化县| 富宁县| 满城县| 临沭县| 乌鲁木齐县| 四平市| 阿尔山市| 克东县| 正阳县| 新密市| 邵武市| 文成县| 和平区| 射洪县| 通江县| 长宁县| 托克逊县| 太谷县| 凤翔县| 渝中区| 嘉禾县| 高邑县| 高陵县| 亳州市| 东乡族自治县| 石屏县| 洪泽县| 茶陵县| 浙江省| 高碑店市| 南康市| 曲阜市| 桑植县| 宜州市| 威远县| 马山县|