wait 和 notify
- 是什么?:
用户线程通信的两个 object 的方法,而且 必须配合 synchronized 使用 - 怎么用?:
- 使用 wait 可以使持有当前对象锁的线程阻塞住,并且释放 持有的当前对象的锁。
- 使用 notify可以唤醒当前对象阻塞住的线程
- 为什么要用?:
实现线程间通信 - 原理:
待补充 - 更多 wait 方法释放锁,notify不释放锁。
- 但这个方法有缺点,不能时时的通知,可以使用
CountDownLatch 类的 countDown / await 方法进行替代,并且达到时时通信的目的。