下列情况中,不会使线程返回所持有的对象锁的是

admin2012-12-13  31

问题 下列情况中,不会使线程返回所持有的对象锁的是

选项 A、当synchronized()语句块执行完毕
B、当调用了线程的suspend()方法
C、当在synchronized()语句块中出现异常(Exception)
D、当持有锁的线程调用该对象的wait()方法

答案B

解析 本题考查Java线程中对象的加锁及其操作。对象加锁的使用非常灵活,一定要注意。对象的锁在如下几种情况下由持有线程返还:当synchronized()语句块执行完后,所以选项A错误;当在synchronized()语句块中出现异常(exception),所以选项B错误;当持有锁的线程调用该对象的wait()方法,此时该线程将释放对象的锁,所以选项D错误。而当调用了线程的 suspend()方法只是使线程暂时停止执行,可以使用其他线程调用resume()方法恢复执行,所以选项 B正确。
转载请注明原文地址:https://kaotiyun.com/show/Zh2p777K
0

最新回复(0)