永发信息网

java两个锁的嵌套,不是死锁

答案:2  悬赏:40  手机版
解决时间 2021-03-25 23:48
java两个锁的嵌套,不是死锁
最佳答案
每个对象有一个监视器锁(monitor)。当monitor被占用时就会处于锁定状态,线程执行monitorenter指令时尝试获取monitor的所有权,过程如下:
1、如果monitor的进入数为0,则该线程进入monitor,然后将进入数设置为1,该线程即为monitor的所有者。
2、如果线程已经占有该monitor,只是重新进入,则进入monitor的进入数加1.
3.如果其他线程已经占用了monitor,则该线程进入阻塞状态,直到monitor的进入数为0,再重新尝试获取monitor的所有权。

第一个线程是monitor的持有者,所以根据以上第二点只是重新进入,不会阻塞
全部回答
方法加synchronized锁的意思是在一个线程还没跑完时,另一个线程不能调用该方法,必须等待。
你这个可以理解为一个方法加锁,另一个加锁的方法在这个方法内。更形象地说就是你进到一个房子后把大门锁了,你再进入厕所把厕所门锁了。不过实际上跟这个比喻有点不一样的是,内部的方法可能是对外开放的,不需要通过外部方法也能访问到内部方法。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
长出来的牙齿尖尖的,怎么回事
黔西县城关镇凤凰中学地址在哪,我要去那里办
通过摆地摊小有成就的有谁?
一辆车先从甲地到乙地,然后从乙地到丙地。甲
建设银行信用卡30号是还款日我29号还全额!然
excel中如何快速删选出第7行 第13行 19行 25
求心上人办事为什么觉得没面子
有个农业买卖网叫一亩田,里面的消息真实吗?
腾讯疯狂贪吃蛇 腾讯很卡怎么办 卡顿解决方法
发个帖,普及一下巴西紫牙乌和印度紫牙乌的区
糖有多少种分类?
我上个月上旬因为撩妹在楼道被三个人群殴,然
求芒果布丁的配方(丝滑、弹性、很Q、就像果
保护区麋鹿被网绳勒死吗?
嫁给了自己不爱的男人,他21岁,我24岁,都是
推荐资讯
酒厂酿酒工多少岁退休
扬州义征离扬州市区远不远啊?
1,夫妻之间房产证更名需要交纳哪些费用
克莱恩台球地址有知道的么?有点事想过去
车是太原的,在榆次有违章,到哪里交罚款?
刚刚我接到一通95588<工商银行>的电话说是有
爱鸟节要干点什么
掌上的三条纹分别代表什么?
洛神轮滑平花鞋怎么样
k1661次火车是兰州的哪个站
郑州梅花零售店(中原商贸城)地址在哪,我要
X战记剧场版里各个人物的结局
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?