什么监视器被线程阻塞? [关闭]

问题描述 投票:1回答:1

想知道是否有一种编程方式来获取一个线程(如果处于阻塞状态)等待锁定的对象?

java multithreading concurrency
1个回答
2
投票

在java 5中引入的接口ThreadMXBean在这种情况下很方便。它对于管理jvm的线程系统非常有帮助。在死锁的情况下特别有用。

  1. 你可以使用ThreadMxBean :: getThreadInfo找到一个线程的ThreadInfo,它将线程id作为输入。
  2. ThreadInfo有一个方法getLockName(),它返回一个字符串,表示一个线程被阻塞的监视器对象。

希望这能回答你的问题。

© www.soinside.com 2019 - 2024. All rights reserved.