JVMTI 提供事件ContendedMonitorEnter
和ContendedMonitorEntered
检测与使用相关的事件synchronized
。synchronized
不是别的,而是一个可重入锁。
现在我还想跟踪与锁结构相关的事件:ReentrantLock
. 我可以挂钩它lock()
和unlock()
事件的方法进入/退出。但是,这些事件挂钩不提供有关调用它们的对象的任何信息。因此我无法区分不同的ReentrantLock
,因此无法记录有关当前锁定哪个锁的任何信息。
有没有其他方法可以跟踪这个?