sleep 与 wait 的区别 — 程序设计填空题
题目
线程 X 进入某对象的 synchronized 代码块后,先调用了 sleep(500),随后(被唤醒后)在同一块中调用了 wait()。已知 Thread 类的 sleep 方法休眠时对所持对象锁的处理与 Object 类的 wait 方法相反,且 wait 必须依靠 notify/notifyAll 唤醒而 sleep 到时自动醒来。请在比较两者后填空:sleep 休眠期间线程 X ____(填“释放”或“不释放”)该对象锁,而执行 wait 后线程 X ____(填“释放”或“不释放”)该对象锁,且 wait 只能通过 ____(填“notify/notifyAll 通知”或“时间到自动”)方式结束等待。