标签: java multithreading locking
是否有任何工具或方法可以获取有关java中锁的所有信息?
例如,如果有一个java程序,它会创建两个线程,并且两个线程都需要某些变量的锁。是否有任何工具可以输出信息,如哪个线程锁定哪个变量?
答案 0 :(得分:1)
您可以通过ThreadMXBean使用ThreadInfo#getLockedSynchronizers()(JavaDoc)来获取线程上当前拥有的锁上的LockInfo数组。 LockInfo会告诉你只是课程名称&锁的身份哈希码,但这足以跟踪锁对象。