对老师提出的synchronize有一些其他理解

来源:3-3 线程安全性-原子性-synchronized

黄金时代zzy

2018-07-12

老师,之前提到的synchronize作用于非方法和非代码块,你说的是作用于单个对象,我觉得是因为我们synchronize(this)里面放的是this,但是如果我们放的是当前类的Class那么当前类的所有对象都是同步的,之后说的锁的静态代码块也是同理,因为我们静态的方法和代码块都是在我们对象创建之前的,所以里面不能放this,只能放当前类的Class所以锁定的也是当前类所有对象

写回答

1回答

黄金时代zzy

提问者

2018-07-12

我觉得和代码块非代码块无关,关键还是synchronize()括号中锁定的内容有关

0
1
慕粉13951610073
你讲的没错,和synchronize里面的内容有关,属于类的就锁定的是类的所有对象,属于类的实例对象的,锁的就是当前对象
2019-01-10
共1条回复

Java高并发编程,构建并发知识体系,提升面试成功率

构建完整并发与高并发知识体系,倍增高薪面试成功率!

3923 学习 · 832 问题

查看课程