wait()和notify()如何调用,为什么放在Object里?
考察说明
考察线程协作机制的理解及Object内置锁模型的设计原理
回答思路
- 说明wait()、notify()和notifyAll()的调用前提:必须在synchronized块或方法中
- 解释wait()释放锁并进入等待队列,notify()唤醒一个等待线程,notifyAll()唤醒所有
- 阐述放在Object中的原因:每个对象都关联一个监视器锁,wait/notify基于对象锁实现
- 对比与Condition的差异,体现对线程协作的深入理解
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。