標籤:trace rri public after ring import not 修改 log
這裡學習一下java多線程中的關於wait方法和notify方法的用法。
wait和notify方法的使用 一、wait與notify的簡單一實例
import java.util.concurrent.TimeUnit;public class WaitThreadTest { public static void main(String[] args) throws Exception { Object object = new Object(); new WaitThread(object).start(); TimeUnit.SECONDS.sleep(2); // 2秒之後喚醒 new NotifyThread(object).start(); } static class WaitThread extends Thread { private Object object; WaitThread(Object object) { this.object = object; } @Override public void run() { synchronized (object) { try { System.out.println("before wait."); object.wait(); System.out.println("after wait."); } catch (InterruptedException e) { e.printStackTrace(); } } } } static class NotifyThread extends Thread { private Object object; NotifyThread(Object object) { this.object = object; } @Override public void run() { synchronized (object) { System.out.println("before notify."); object.notify(); System.out.println("after notify."); } } }}
啟動並執行結果如下:
before wait.before notify.after notify.after wait.
如果修改object.wait()為object.wait(1),啟動並執行結果如下:
before wait.after wait.before notify.after notify.
友情連結
java基礎---->java多線程的使用(八)