繁体   English   中英

java - 在等待时从内部调用synchronized方法

[英]java - calling synchronized method from inside synchronized while waiting

是否可以在等待资源变为可用时从同步方法内调用同步方法(使用wait())? 谢谢

Java的互斥锁是递归的,因此您可以递归调用synchronized方法或调用另一个已经锁定的同步方法。 你需要告诉我们你特别想要做什么,虽然......许多线程锁定/同步的东西,如果做得不正确,可能会导致死锁,你的问题并不完全清楚你正试图这样做。

没有。没有办法检查给定对象的监视器当前是否在java中保持,或以原子方式“检查并抓住”对象的锁定。

您可能想查看标准的java软件包http://java.sun.com/javase/6/docs/api/java/util/concurrent/locks/package-summary.html Lock类具有tryLock()函数,它可以尝试获取锁定(因此,如果你的线程无法获得锁定,那么它可以根据tryLock()的返回值执行其他操作)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM