概述
jdk.internal.jvmstat 模块是 jdk.attach,
jdk.jcmd,
jdk.jconsole,
jdk.jstatd;
等模块的基础;
jdk.cmd模块的jps命令就是直接基于 jdk.internal.jvmstat的api构建。
这个模块:Defines an internal API for monitoring a HotSpot Java Virtual Machine using its shared memory instrumentation buffer
其核心接口 sun.jvmstat.monitor.MonitoredHost 和 sun.jvmstat.monitor.MonitoredVm 提供对一个操作被监控的 Virtual Machine 的操作。
通过 MonitoredHost的 getMonitoredVm 方法可以创建MonitoredVm 。其有三个具体的实现 FileMonitoredVm,LocalMonitoredVm和RemoteMonitoredVm;
以JPS命令为例,jps命令根据MonitorHost的静态方法创建一个MonitorHost对象,根据的hostid的标识的模式来判断创建哪一个MonitorHost。
通过返回的特定的 MonitorHost 对象,根据java进程号,创建MonitoredVm对象,用于进一步操作具体的某个java进程(可能是本地的或者远程的);
VirtualMachineImpl 提供了直接连 hotspot jvm的 实际操作,其连接操作都是 native 的代码:
最后
以上就是外向蜜蜂为你收集整理的jdk.internal.jvmstat 简介的全部内容,希望文章能够帮你解决jdk.internal.jvmstat 简介所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复