[英]Does the lock on a static synchronized method affect the non-static synchronized methods of it's instances?
假设我有 2 个方法,一个声明为synchronized
,另一个声明为static synchronized
。 那么当一个线程获得类级锁时,它是否也获得了它所有实例上的锁? 换句话说,如果一个线程获得了一个类级锁,另一个线程是否可以同时在它的一个实例上获得一个对象级锁?
static synchronized
方法将为 class 获取Class
实例上的锁。 synchronized
方法将获取this
上的锁。 当您通过调用同步的 static 方法获取 class 级锁时,对象级锁不受影响。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.