少年阿賓

          那些青春的歲月

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            500 Posts :: 0 Stories :: 135 Comments :: 0 Trackbacks
           Java所有的類都具有線程的潛力,Java賦予的每個對象一個鎖,在計算機內部工作在同一時間,只有一個對象可以持有鎖,也就是說程序在同一時間只有一個程序可以運行,這里我把對象比作是一個小的程序。而多處理器,那么就另當別論了。

                在這里我們首先學習一下公共方法wait,notify,notifyAll。

                wait方法可以使在當前線程的對象等待,直到別的線程調用此對象的notify或notifyAll方法(注意:調用的是此對象的notify和notifyAll),并且當前運行的線程必須具有此對象的對象監視器

          package com.abin.lee.thread.thread;

          public class CarryTask extends Thread {
           public void run() {
                  try {
                      synchronized (this) {
                          Thread t = Thread.currentThread();
                          System.out.println(t.getId() + t.getName() + ":task start, wait for notify...");
                          this.wait();
                          System.out.println(t.getId() + t.getName() + ":task continue...");
                      }
                  } catch (InterruptedException ex) {
                     System.out.println(CarryTask.class.getName());
                  }
              }


          }





          package com.abin.lee.thread.thread;

          public class CarryWait {
           public static void main(String[] args) throws InterruptedException {
            CarryTask task = new CarryTask();
            Thread t = Thread.currentThread();
            System.out.println(t.getId() + t.getName() + ":task start...");
            task.start();
            Thread.sleep(2000);
            synchronized (task) {
             System.out.println("id="+Thread.currentThread().getId()+",Name="+Thread.currentThread().getName()+",task="+task+",notify");
             task.notify();
            }
           }

          }





          http://www.iteye.com/topic/1124814
          posted on 2013-01-16 23:46 abin 閱讀(402) 評論(0)  編輯  收藏 所屬分類: JavaMultithread
          主站蜘蛛池模板: 南部县| 宁城县| 芜湖市| 日照市| 忻城县| 柞水县| 临高县| 封开县| 贵溪市| 克拉玛依市| 伊金霍洛旗| 大连市| 琼结县| 天津市| 庐江县| 阳山县| 弥勒县| 类乌齐县| 台北县| 湖北省| 乃东县| 民勤县| 曲沃县| 伊春市| 明光市| 安溪县| 大城县| 龙里县| 咸宁市| 河北省| 八宿县| 同江市| 德令哈市| 长沙市| 锡林浩特市| 桃园县| 牙克石市| 汕头市| 泸州市| 岐山县| 安平县|