线程的通信

Posted ylblikestudyjava

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线程的通信相关的知识,希望对你有一定的参考价值。

wait():将线程进入阻塞状态,需要等待唤醒,此时释放cpu资源

notify():程序一旦执行到此方法,就会唤醒一个被wait的线程

notifyAll():程序一旦执行到此方法,就会唤醒被wait的线程

注意:这三个方法只能用在同步方法或同步代码块中

  这三个方法的调用者必须是同步监视器,否则会报错

 

wait()和sleep()的区别

相同点:都会使正在进行的线程进入阻塞状态

不同点: 结束阻塞的方式不同,wait使用notify或notifyAll方法,

              而sleep()时间结束自动退出阻塞

    wait()会释放cpu资源,而sleep()不会释放资源

 

以上是关于线程的通信的主要内容,如果未能解决你的问题,请参考以下文章

Java 多线程线程间的通信

等待与唤醒机制(线程之间的通信)

13.6 线程通信

13.6 线程通信

《多线程》第6节:线程通信

java多线程-线程通信