引入:
上文我们讲解了Agent如何利用环境指针访问VM(操作局部变量篇),这里主要关注于如何操作断点。
这个在调试期间非常频繁的被使用。
分类7:断点操作
a.SetBreakPoint.设置断点,它会产生一个BreakPoint事件。
jvmtiError SetBreakpoint(jvmtiEnv* env, jmethodID method, jlocation location)
设置断点指令。从这里可以看出需要传两个参数,一个是被设断点的方法,一个是方法内此断点的指令位置。这和我们设置断点过程是精确一致的。
b.ClearBreakPoint.清除断点。
jvmtiError ClearBreakpoint(jvmtiEnv* env, jmethodID method, jlocation location)
本文出自 “平行线的凝聚” 博客,请务必保留此出处http://supercharles888.blog.51cto.com/609344/1587766
JPDA 架构研究11 - Agent利用环境指针访问VM(断点操作篇)
原文地址:http://supercharles888.blog.51cto.com/609344/1587766