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

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

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

    posts - 39,  comments - 263,  trackbacks - 0

    線程池的體驗,這里是簡單的例子,不解釋了,只能意會不能言傳。

     

    //第一個類
    package thread;
    import java.util.LinkedList;


    public class ThreadPool {
      private LinkedList tasks = new LinkedList();

      public ThreadPool(int size) {
        for (int i = 0; i < size; i++) {
         System.out.println("new");
          Thread thread = new ThreadTask(this);
          thread.start();
        }
      }

      public void run(Runnable task) {
       System.out.println("run0");
        synchronized (tasks) {
          tasks.addLast(task);
          tasks.notify();
        }
      }

      public Runnable getNext() {
        Runnable returnVal = null;
        synchronized (tasks) {
          while (tasks.isEmpty()) {
            try {
             System.out.println("waiting");
             Thread.sleep(1000);
              tasks.wait();
              System.out.println("waited");
            } catch (InterruptedException ex) {
              System.err.println("Interrupted");
            }
          }
          returnVal = (Runnable) tasks.removeFirst();
        }
        return returnVal;
      }

      public static void main(String args[]) {
        final String message[] = { "zgw", "nake", "sunny", "piao" };
        ThreadPool pool = new ThreadPool(message.length / 1);
        for (int i = 0, n = message.length; i < n; i++) {
          final int innerI = i;
          Runnable  runner = new Runnable() {
            public void run() {
              for (int j = 0; j < 25; j++) {
                System.out.println("j: " + j + ": " + message[innerI]+"   "+innerI);
              }
            }
          };
         
         pool.run(runner);
        }
      }
    }
    //---------------------

    第二個類
    package thread;
    import java.util.LinkedList;

    class ThreadTask extends Thread {
      private ThreadPool pool;

      public ThreadTask(ThreadPool thePool) {
        pool = thePool;
      }

      public void run() {
        while (true) {
         System.out.println("gogogo");
          // blocks until job
          Runnable job = pool.getNext();
          try {
            job.run();
          } catch (Exception e) {

            System.err.println("Job exception: " + e);
          }
        }
      }
    }

    posted on 2006-01-08 22:58 nake 閱讀(287) 評論(0)  編輯  收藏

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


    網站導航:
     
    <2006年1月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234

    常用鏈接

    留言簿(18)

    我參與的團隊

    隨筆檔案(39)

    收藏夾(1)

    搜索

    •  

    積分與排名

    • 積分 - 451272
    • 排名 - 119

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 黄色网址免费观看| 青青操免费在线视频| 成年女性特黄午夜视频免费看| 亚洲av无码不卡一区二区三区| 在线观看肉片AV网站免费| 亚洲理论电影在线观看| 97人妻精品全国免费视频| 亚洲av午夜福利精品一区| 久久美女网站免费| 亚洲黄色在线观看视频| 免费精品国偷自产在线在线| 亚洲私人无码综合久久网| 国产在线观看免费完整版中文版| 亚洲a∨国产av综合av下载| vvvv99日韩精品亚洲| 免费无码黄网站在线看| 亚洲视频一区在线观看| 无码视频免费一区二三区| 美女视频免费看一区二区| 国产亚洲精品自在线观看| 免费精品无码AV片在线观看| 亚洲AV一二三区成人影片| 国产免费直播在线观看视频| 成在线人直播免费视频| 亚洲一卡2卡三卡4卡有限公司| 免费成人福利视频| 直接进入免费看黄的网站| 亚洲成色WWW久久网站| 免费阿v网站在线观看g| 人人狠狠综合久久亚洲| 亚洲国产一二三精品无码| 午夜国产精品免费观看 | 久久久久亚洲AV无码专区桃色| 青柠影视在线观看免费高清| 亚洲中文字幕无码av在线| 免费一区二区视频| 久久免费视频99| 粉色视频成年免费人15次| 久久亚洲AV成人无码国产| 精品免费国产一区二区| 成全高清在线观看免费|