什么监视器被线程阻塞?

时间:2018-03-02 12:27:50

标签: java multithreading concurrency

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

1 个答案:

答案 0 :(得分:2)

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

  1. 您可以使用ThreadMxBean :: getThreadInfo为线程找到ThreadInfo,它将线程ID作为输入。
  2. ThreadInfo有一个方法getLockName(),它返回一个字符串,表示阻塞线程的监视器对象。
  3. 希望这能回答你的问题。