1
如果我有这样的事情线程在阻塞后是否退出每个同步的方法或对象?
synchronized void doSomething() throws Exception {
synchronized (lock1) {
lock1.wait();
}
wait();
}
一旦块在lock1.wait()
,将一些其他线程能够访问doSomething()
做工作呢?
如果被阻塞的线程获得信号并重新获得进入方法会怎么样?它会阻止wait()
还是不?
请注意,这不会考虑到虚假唤醒可能发生。请参阅https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-- – Fildor