为什么线程通信的方法wait(), notify()和notifyAll()被定义在Object类里?【面试题详解】

今天爱分享给大家带来为什么线程通信的方法wait(), notify()和notifyAll()被定义在Object类里?【面试题详解】,希望能够帮助到大家。

在Java中,任意对象都可以当作锁来使用,由于锁对象的任意性,所以这些通信方法需要被定义在Object类里。
为什么wait(), notify()和notifyAll()必须在同步方法或者同步块中被调用?其目的在于确保等待线程从Wait()返回时能够感知通知线程对共享变量所作出的修改。如果不在同步范围内使用,就会抛出java.lang.IllegalMonitorStateException的异常。

人已赞赏
Java

线程同步的方式有哪些【面试题详解】

2020-11-6 16:43:36

Java

CopyOnWrite是什么【面试题详解】

2020-11-6 16:46:49

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
'); })();