JPDA 架构研究12 - Agent利用环境指针访问VM(观察字段篇)
引入: 上文我们讲解了Agent如何利用环境指针访问VM的操作断点部分,这里我们详细讲解观察字段篇。这也是我们调试期间用的最多的操作。因为我们要不断从Watch Field看他们值的改变。 分类8:观察字段 a.SetFieldAccessWatch.启用对某字段进行访问的观察。每次访问都会创建一个FieldWatch事件。 jvmtiError SetFieldAccessWatch(jvm.....
JPDA 架构研究5 - Agent利用环境指针访问VM (内存管理篇)
引入: 我们在前面说到JVMTI的客户端Agent,又提到Agent通过环境指针来访问VM。这里就来看看环境指针到底有多大的访问VM的能力。 分类1:内存管理 a.Allocate. 分配内存 jvmtiError Allocate(jvmtiEnv* env, &nb...
JPDA 架构研究6 - Agent利用环境指针访问VM (线程管理篇)
引入: 上篇文章讲解了分类:内存管理,现在讲线程类操作的接口。 分类2:线程类操作 a.GetThreadState.获取线程状态 jvmtiError GetThreadState(jvmtiEnv* env, jthread thr...
JPDA 架构研究9 - Agent利用环境指针访问VM (堆管理篇)
引入: 上文中我们讨论了Agent利用环境指针访问VM的堆栈操作部分,这里我们讨论堆操作部分。 分类5:堆操作 a. GetTag. 获取对象在堆上的唯一标识符(长整型)。 jvmtiError GetTag(jvmtiEnv* env, job...
JPDA 架构研究11 - Agent利用环境指针访问VM(断点操作篇)
引入: 上文我们讲解了Agent如何利用环境指针访问VM(操作局部变量篇),这里主要关注于如何操作断点。 这个在调试期间非常频繁的被使用。 分类7:断点操作 a.SetBreakPoint.设置断点,它会产生一个BreakPoint事件。 jvmtiError SetBreakpoint(jvmtiEnv* env,  ...
JPDA 架构研究14 - Agent利用环境指针访问VM(对象管理篇)
引入: 上文讨论了Agent如何利用环境指针访问VM(管理类),这里讨论如何管理对象。 分类9:对象管理 a.GetObjectSize. 获取对象的大小, jvmtiError GetObjectSize(jvmtiEnv* env, &nbs...
JPDA 架构研究16 - Agent利用环境指针访问VM(方法访问篇)
引入: 上文中我们讲解了Agent如何利用环境指针来访问VM的字段访问部分,现在来讲解方法访问部分。 分类11:方法访问 a.GetMethodName. 获取方法名字和签名 jvmtiError GetMethodName(jvmtiEnv* env, &...
本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。
金融级分布式架构
SOFAStack™(Scalable Open Financial Architecture Stack)是一套用于快速构建金融级分布式架构的中间件,也是在金融场景里锤炼出来的最佳实践。
+关注