同步访问问题

时间:2020-07-14 11:50:13

标签: java synchronization thread-synchronization locks

我在同步方面有些疑问:

  1. 如果我从同步方法中调用非同步方法 非同步方法是否可以无锁,其他可以吗 方法(实例方法)是否仍访问非同步方法?

  2. 如果我具有类级别锁,可以同步其他线程访问 实例方法在同一时间?

1 个答案:

答案 0 :(得分:0)

  1. 进入synchronized实例方法的线程获得了对对象(this)的锁定,但没有锁定整个对象。这样可以防止两个线程同时进入同步(实例)方法,但是其他非同步方法仍然可以由其他线程同时执行。

  2. 类级锁定将阻止线程进入任何同步的类级(静态)方法。同步实例方法获取当前实例(this)的锁。由于这些锁不相同,因此同步实例方法将不会被阻止。

可以很好地总结该主题here