为什么wait 是 Object 类的本地方法
本质上来说wait 和 notify 是
用于两个线程通信的
,不是单纯用来让一个线程等待,或者唤醒一个线程
- 它从一开始出现就不是单单为了去阻塞一个线程的,为了用于
线程通信
- 而什么叫做
线程通信
? - 线程是相互独立的,但是我们需要
多个线程完成一个任务
的时候,需要线程直接互相协作- 比如操作同一份数据,线程1操作了第一部分,线程2要接着操作第二部分
- 这就是线程之间的通信
- 所以线程通信要通信什么?
- 答:要通信数据,数据是什么,数据是线程吗?不,数据是对象
- 有这么个道理,方法在线程上用来
控制线程
,方法在对象上用来控制对象
- 所以控制对象丶数据在不同线程工作的方法应该写在对象上,这样我们就能精确控制每一份数据