【发布时间】:2020-07-20 08:50:41
【问题描述】:
如果执行synchronized 方法的线程挂起会怎样?其他线程是否会获得锁并继续同一类中的另一个synchronized 方法..?
假设代码是这样的:
class Test{
public synchronized void methodA(){
//methodA
}
public synchronized void methodB(){
//methodB
}
}
如果ThreadA 执行methodA()。并且在执行该方法时,如果它被操作系统隐式挂起。另一个线程,比如ThreadB 能否获得锁并执行methodB()?还是只有在ThreadA 完成与methodA() 的工作后才有可能?
【问题讨论】:
标签: java multithreading synchronized