提到,将显式锁声明用于对象级别锁如下所示。但是,我认为对于我们创建的对象的每个实例,最终都会为锁创建一个新对象,并通过锁访问我们的方法,这都是很昂贵的步骤。
但是,对于同步方法,我相信没有任何事情,因为您使用的是对象自己的锁,而您只需支付获取锁的费用。您避免创建显式锁定对象。
我在这里想念什么吗?
public class DemoClass
{
private final Object lock = new Object();
public void demoMethod(){
synchronized (lock)
{
//other thread safe code
}
}
}
使用显式锁是否昂贵?