java等待方法混乱
我对thread类的wait()方法感到困惑。众所周知,wait()方法总是从同步上下文调用的。但在执行wait方法之后,该线程是否会释放它所持有的对象上的锁
我的意思是问“当一个线程去等待一个对象的池时,在去之前它会释放它拥有的锁吗?”
你可以在下面搜索框中键入要查询的问题!
我对thread类的wait()方法感到困惑。众所周知,wait()方法总是从同步上下文调用的。但在执行wait方法之后,该线程是否会释放它所持有的对象上的锁
我的意思是问“当一个线程去等待一个对象的池时,在去之前它会释放它拥有的锁吗?”
# 1 楼答案
http://download.oracle.com/javase/6/docs/api/java/lang/Object.html#wait()
回答你的第二个问题:从不。正如在上一个问题中,锁永远不会被任意释放——这会破坏同步
Oracle提供了一个相当详细的教程,涵盖了所有这些信息:
http://download.oracle.com/javase/tutorial/essential/concurrency/