Wait 与 Notify 与 NotifyAll

综和概述

  • wait()、notify()和notifyAll()是Java超级根类Object类中的方法
  • wait()、notify()和notifyAll()方法是本地方法,并且为final方法,无法被重写。
  • 调用某个对象的wait()方法能让当前线程阻塞,并且当前线程必须拥有此对象的锁(monitor)
  • 调用某个对象的notify()方法能够唤醒一个正在等待这个对象锁线程,如果有多个线程都在等待这个对象的锁,则随机唤醒其中一个线程;
  • 调用notifyAll()方法能够唤醒所有正在等待这个对象的monitor的线程;

wati()

  • public final native void wait(long timeout) throws InterruptedException;

notify()

  • public final native void notify()

notifyAll()

  • public final native void notifyAll();




猜你喜欢

转载自blog.csdn.net/wangmx1993328/article/details/80703971