java jmap jc_利用jmap命令查看JVM内存使用详情
介绍
打印出某个java进程(使用pid)内存内的,所有‘对象’的情况(如:产生那些对象,及其数量)。它的用途是为了展示java进程的内存映射信息,或者堆内存详情。
可以输出所有内存中对象的工具,甚至可以将VM 中的heap,以二进制输出成文本。
jmap命令:
jmap [option]
(to connect to running process) 连接到正在运行的进程
jmap [option]
(to connect to a core file) 连接到核心文件
jmap [option] [server_id@]
(to connect to remote debug server) 连接到远程调试服务
参数说明
pid: 目标进程的PID,进程编号,可以采用ps -ef | grep java 查看java进程的PID;
executable: 产生core dump的java可执行程序;
core: 将被打印信息的core dump文件;
remote-hostname-or-IP: 远程debug服务的主机名或ip;
server-id: 唯一id,假如一台主机上多个远程debug服务;
如果使用不带选项参数的jmap打印共享对象映射,将会打印目标虚拟机中加载的每个共享对象的起始地址、映射大小以及共享对象文件的路径全称。
option参数使用
-finalizerinfo 打印正等候回收的对象的信息.
-heap 打印heap的概要信息,GC使用的算法,heap的配置及wise heap的使用情况.
-histo[:live] 打印每个class的实例数目,内存占用,类全名信息. VM的内部类名字开头会加上前缀”*”. 如果live子参数加上后,只统计活的对象数量.
-permstat 打印classload和jvm heap长久层的信息. 包含每个classloader的名字,活泼性,地址,父classloader和加载的class数量. 另外,内部String的数量和占用内存数也会打印出来.
-F 强迫.在pid没有响应的时候使用-dump或者-histo参数. 在这个模式下,live子参数无效.
-h | -help 打印辅助信息
-J 传递参数给jmap启动的jvm.
简单例子说明
通过jmap -dump:format=b,file=jmap.txt 26937将日志文件打印到文本中,可以看到当前目录下多了一个日志文件
利用MemoryAnalyzer软件打开日志文件,即可看到相关信息。如图所示
MemoryAnalyzer软件的使用说明请自行查阅
java jmap jc_利用jmap命令查看JVM内存使用详情相关推荐
- java命令查看jvm内存
JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps.jstack.jmap.jhat.jstat等小巧的工具,本博客希望能起抛砖引玉之用,让 ...
- jmap java opts_jmap --查看JVM内存使用详情
概述 命令jmap是一个多功能的命令.它可以生成 java 程序的 dump 文件, 也可以查看堆内对象示例的统计信息.查看 ClassLoader 的信息以及 finalizer 队列. jmap命 ...
- java $1参数_jmap命令详解----查看JVM内存使用详情
linux获取java进程PID: https://www.cnblogs.com/sxdcgaq8080/p/10734752.html 如果命令使用过程中报错,可能解决你问题的方案: https: ...
- Linux查看WAS的jvm信息,linux 下使用命令查看jvm信息
java程序员除了编写业务代码之外,特别是项目上线之后,更需要关注的是系统的性能表现,这个时候就需要了解一下jvm的性能表现了,可以借助于java虚拟机自带的一些分析工具,主要有三个常用的命令. 1. ...
- linux查看jvm参数命令,通过命令查看jvm参数
4.1 查看堆详细信息:jmap -heap pid 4.2 查看当前堆中对象统计信息: jmap -histo pid 4.3 jmap -dump:format=b,file=dumpFileNa ...
- stat命令查看jvm的GC状况
jstat命令查看jvm的GC状况 (以Linux为例) jstat命令能够查看堆内存各部分的使用量,以及加载类的数量.命令的格式以下:java jstat [-命令选项] [vmid] [间隔时间/ ...
- 利用adb命令查看apk文件包名的一些方法
利用adb命令查看apk文件包名的一些方法 前提是已经下载android SDK并配好环境变量! 在控制台输入命令$adb shell pm 可以看到adb shell pm的相关用法,详细信息请自己 ...
- 解析IOS控制台利用GDB命令查看报错堆栈
解析IOS控制台利用GDB命令查看报错堆栈是本文要介绍的内容,在ios开发中,如果提前释放一个指针的内存,在以后还继续使用这个指针,那么程序会立刻crash掉,而且很难有报错信息,我以前都是靠猜测去判 ...
- java 内存情况_java查看jvm内存使用情况
java查看jvm内存使用情况 (2012-03-22 15:50:54) 标签: jvm 内存 虚拟机 分配 it java.lang.Runtime类提供了查看当前JVM内存的使用情况.每个jav ...
最新文章
- 通过loganalyzer展示数据库中的日志
- 【408预推免复习】操作系统之文件管理
- Html标签带来的安全隐患
- CMM中18个KPA
- linux修改windows注册表,妙招:让修改的注册表立即生效的几种方法
- 计算机网络考试难吗,网络教育统考中的计算机考试难不难,
- 正则表达式在python中的应用_正则表达式:Python3中的应用简介
- OpenCV每日函数 对象追踪模块 Meanshift算法
- 【Frobenius norm(弗罗贝尼乌斯-范数)(F-范数)】
- 解决微信公众平台IP白名单
- Android开发——“adb”不是内部或外部命令,也不是可运行的程序或批处理文件——解决方案
- 【01】什么是概率图模型?
- 拆解了20个企业微信社群的我, 发现【社群营销】最好的方法应该是这样!
- python几行代码实现邮件解析
- VMware Workstation Pro 16下载地址及key
- [已解决] 输入信号超出范围,调整为1600x900@60Hz
- 网站开发:从写代码到公网访问整个流程(CSDN征文活动第一期获奖文章)
- 主流商业智能(BI)工具的比较(三):Qlik与Domo
- 火鸟Firebird数据库的中文参考资料
- fflush(stdin)和fflush(stdout)
热门文章
- 8种常见SQL错误用法,你犯过几个?
- 不同网段通过静态路由实现互通(强烈推荐)
- ELK开机自启动脚本
- Python3实现从txt文件中读取指定行的方法
- linux清除cpu,解决kswapd0 CPU占用率高的问题-清除病毒
- word中如何对公式插入题注和引用
- 把关与服务的关系_泉州代做投标书-电子标书值得信赖 - 泉州广告服务
- html前端页面的基本骨架是,web前端入门到实战:css实现的骨架屏方案
- Mysql无法创建外键的原因汇总_查看MySQL创建外键约束失败详细原因的方法
- c语言malloc用法 数组,详解C语言用malloc函数申请二维动态数组的实例