程序设计 选择题 较难 ★ 精品

sleep 与 wait 的区别 — 程序设计选择题

Java 程序设计(大学通用) 多线程基础 AI 三重审校通过

题目
线程 T 进入某对象的 synchronized 块后,先调用 obj.wait() 进入等待,随后被其他线程 notify() 唤醒并在同一 synchronized 块内继续执行,接着又调用 Thread.sleep(5000)。关于这两个阶段中 T 所持有锁的状态,下列说法正确的是: A. 调用 wait() 和 sleep() 期间 T 均持有该对象锁 B. 调用 wait() 期间释放该对象锁,调用 sleep() 期间仍持有该对象锁 C. 调用 wait() 期间持有该对象锁,调用 sleep() 期间释放该对象锁 D. 两次调用期间 T 均释放了该对象锁