in core/src/main/java/com/jetbrains/sa/jdi/ObjectReferenceImpl.java [197:212]
private int countLockedObjects(JavaThread jt, Oop obj) {
int res = 0;
JavaVFrame frame = jt.getLastJavaVFrameDbg();
while (frame != null) {
OopHandle givenHandle = obj.getHandle();
for (Object monitor : JvmUtils.getFrameMonitors(frame)) {
MonitorInfo mi = (MonitorInfo) monitor;
if (mi.eliminated() && frame.isCompiledFrame()) continue; // skip eliminated monitor
if (givenHandle.equals(mi.owner())) {
res++;
}
}
frame = JvmUtils.getFrameJavaSender(frame);
}
return res;
}