永发信息网

synchronized(this)

答案:2  悬赏:70  手机版
解决时间 2021-01-03 15:18
public class Thread1 implements Runnable {
public void run() {
synchronized(this) { //这里的this应该是指当前对象吧
for (int i = 0; i < 5; i++) {
System.out.println(Thread.currentThread().getName() + " synchronized loop " + i);
}
}
}
public static void main(String[] args) {
Thread1 t1 = new Thread1();
Thread ta = new Thread(t1, "A");
Thread tb = new Thread(t1, "B");
ta.start();
tb.start();
}
}
那在ta和tb启动后运行run时,synchronized(this)里的this应该分别指的是ta和tb对吧,明明是2个不同对象为什么会有一个线程被阻塞呢?
最佳答案
synchronized(this)里的this 是指当前class的实例

这个当前class是 Thread1,所以Thread1的实例在main方法里是

Thread1 t1 = new Thread1();

也就是t1,所以当ta和tb运行起来的时候,锁了同一个对象t1,自然就会引发阻塞
全部回答
括号里面放哪个对象,就锁那个对象。。。。。。注意作用域范围
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
华龙区濮阳麦客多哪位知道具体地址啊
LUCY怎么读,怎么发音
婚礼送红包,红包上一般要写下自己名字吗?
自己想加盟大林树除甲醛项目,可是又担心有风
白色衬衫配什么裤子
在手机上安装什么软件才能既可以输入泰文又可
用小学三年级上册第一单元的《爱什么颜色》做
Mr. Li isn’t here. HeShanghai on business
深圳在中国地图上属于华东区吗
江苏省阜宁县古河镇户籍管理科电话是多少,谢
手机貌似中毒了。怎么老弹广告
我的世界稻草有什么用
非洲与欧洲之间的海峡是A.马六甲海峡B.霍尔木
单选题Itissaidthatlandanimals_______
如何使用钉钉电话会议
推荐资讯
为接受村民监督,某村定期在村务公开栏上公布
剑网三怎么进竞技场
Web SearchSearch billions of web pagesGoog
延期拒保是什么意思啊?
70年生人属狗农历丨月丨9生日五行缺什么
单选题孙中山发动护法运动是因为A.段祺瑞拒绝
下列命题中正确的是A.有一个内角是95°的两个
提手旁加幼念什么
单选题唐朝由盛转衰开始于A.安史之乱B.藩镇割
如何使农行卡卡号冻结,碰到一个骗子
潢川县水利局地址有知道的么?有点事想过去!
依次填入下面一段文字横线处的语句,衔接最恰
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?