学习是最好的投资!
可以参考我的博客
线程的同步之Synchronized的使用
线程的同步之Synchronized在单例模式中的应用
这篇博客 有解答。不过关于全局锁的提法容易令人误解。因为 sychoronized 是使用括号里的对象来上锁,而 String.class 不是String 类的全部实例,而是一个对象,是一个类型为 Class 的对象,因此,如果你使用不同的这样的 class 对象来同步,则获得的是不同的锁。
sychoronized
String.class
可以参考我的博客
线程的同步之Synchronized的使用
线程的同步之Synchronized在单例模式中的应用
这篇博客 有解答。不过关于全局锁的提法容易令人误解。因为
sychoronized
是使用括号里的对象来上锁,而String.class
不是String 类的全部实例,而是一个对象,是一个类型为 Class 的对象,因此,如果你使用不同的这样的 class 对象来同步,则获得的是不同的锁。