A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© qingxi1 中级黑马   /  2014-7-26 00:23  /  1413 人查看  /  9 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

看视频时想到一个问题,一个线程持有一把锁,然后这个线程挂了,但是他没有来得及释放锁,那么这个锁会被系统释放吗?

9 个回复

倒序浏览
所以才有资源被死锁的情况。
回复 使用道具 举报
楼上 正解。。。
回复 使用道具 举报
线程死了,jvm不会去检查释放锁吗?
死锁不是两线程两把锁,相互请求调用才会出现吗?
回复 使用道具 举报
锁只是个比喻

线程挂了,那么就没它什么事儿了。其他线程该怎么着还怎么着。
回复 使用道具 举报
我觉得你需要用严谨的语言重述一下你想描述的情况:什么叫线程“挂了”,这含义太多了。wait()算不算“挂了”?run()方法中的代码执行完毕算不算“挂了”?
回复 使用道具 举报
wait的情况是会释放锁的,sleep倒是不会。
回复 使用道具 举报
线程出现异常情况死了,
回复 使用道具 举报
看看               
回复 使用道具 举报
没执行完不会释放锁的,新特性有lock/unlock方法,把unlock放在finally中,就一定会释放锁了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马