假设我们有
class A {
void m1() {
synchronized (this) {
}
blah blah blah
synchronized (this) {
}
}
}
我的疑问是在执行blah blah blah时,当前正在执行的object o线程释放锁,此时如果其他object o线程获取锁,就会出现死锁。那么我们怎么能说我们应该尝试使用同步块而不是同步方法呢?
假设线程 t1 执行静态同步方法获取类级锁,其他线程能否获取该类实例的锁来执行其他同步方法?