我怎么知道java中的锁信息?

时间:2015-06-22 22:17:14

标签: java multithreading locking

是否有任何工具或方法可以获取有关java中锁的所有信息?

例如,如果有一个java程序,它会创建两个线程,并且两个线程都需要某些变量的锁。是否有任何工具可以输出信息,如哪个线程锁定哪个变量?

1 个答案:

答案 0 :(得分:1)

您可以通过ThreadMXBean使用ThreadInfo#getLockedSynchronizers()(JavaDoc)来获取线程上当前拥有的锁上的LockInfo数组。 LockInfo会告诉你只是课程名称&锁的身份哈希码,但这足以跟踪锁对象。