Java内存使用情况查看工具
Java通过jvm自己管理内存,同时Java提供了一些命令行工具,用于查看内存使用情况。
这里主要介绍一下jstat、jmap命令以及相关工具。
interval,间隔时间,单位为秒或者毫秒
count,打印次数,如果缺省则打印无数次
|
标志
|
说明
|
|
S0C
|
年轻代中第一个survivor区的容量 (字节)
|
|
S1C
|
年轻代中第二个survivor区的容量 (字节)
|
|
S0U
|
年轻代中第一个survivor区目前已使用空间 (字节)
|
|
S1U
|
年轻代中第二个survivor区目前已使用空间 (字节)
|
|
EC
|
年轻代中Eden的容量 (字节)
|
|
EU
|
年轻代中Eden目前已使用空间 (字节)
|
|
OC
|
Old代的容量 (字节)
|
|
OU
|
Old代目前已使用空间 (字节)
|
|
PC
|
Perm(持久代)的容量 (字节)
|
|
PU
|
Perm(持久代)目前已使用空间 (字节)
|
|
YGC
|
从应用程序启动到采样时年轻代中gc次数
|
|
YGCT
|
从应用程序启动到采样时年轻代中gc所用时间(s)
|
|
FGC
|
从应用程序启动到采样时old代(全gc)gc次数
|
|
FGCT
|
从应用程序启动到采样时old代(全gc)gc所用时间(s)
|
|
GCT
|
从应用程序启动到采样时gc用的总时间(s)
|
|
NGCMN
|
年轻代(young)中初始化(最小)的大小 (字节)
|
|
NGCMX
|
年轻代(young)的最大容量 (字节)
|
|
NGC
|
年轻代(young)中当前的容量 (字节)
|
|
OGCMN
|
old代中初始化(最小)的大小 (字节)
|
|
OGCMX
|
old代的最大容量 (字节)
|
|
OGC
|
old代当前新生成的容量 (字节)
|
|
PGCMN
|
perm代中初始化(最小)的大小 (字节)
|
|
PGCMX
|
perm代的最大容量 (字节)
|
|
PGC
|
perm代当前新生成的容量 (字节)
|
|
S0
|
年轻代中第一个survivor区已使用的占当前容量百分比
|
|
S1
|
年轻代中第二个survivor区已使用的占当前容量百分比
|
|
E
|
年轻代中Eden已使用的占当前容量百分比
|
|
O
|
old代已使用的占当前容量百分比
|
|
P
|
perm代已使用的占当前容量百分比
|
|
S0CMX
|
年轻代中第一个survivor区的最大容量 (字节)
|
|
S1CMX
|
年轻代中第二个survivor区的最大容量 (字节)
|
|
ECMX
|
年轻代中Eden的最大容量 (字节)
|
|
DSS
|
当前需要survivor区的容量 (字节)(Eden区已满)
|
|
TT
|
持有次数限制
|
|
MTT
|
最大持有次数限制
|
| grant codebase " file:$JAVA_HOME/lib/tools.jar " {
permission java.security.AllPermission;
};
|
| $ jmap -heap 2083 |
| $ jmap -dump:format=b,file=heapdump.hprof <pid> |
| $ jmap -histo 2083 | jmap -histo:live 2083 |
|
JVM version is 25.65-b01
using parallel threads in the new generation. Heap Configuration: Heap Usage: 18841 interned Strings occupying 1633048 bytes. |
Java内存使用情况查看工具的更多相关文章
- Windows查看Java内存使用情况
Windows查看Java程序运行时内存使用情况 1.在cmd命令窗口输入 jconsole ,弹出Java监视和管理控制台窗口 2.连接本地进程,首先需要知道想查看的进程ID ( pid ) 在c ...
- 如何在eclipse dump Java内存占用情况和打印GC LOG
当使用java开发应用程序发生内存泄露的时候,经常会需要dump内存,然后使用内存分析工具,比如Eclipse Memory Analyzer(一般称作MAT)工具. 本文将介绍如何在eclipse ...
- python的__slots__节约内存的魔法;检查python每一行代码内存占用情况的工具
在Python中,每个类都有实例属性.默认情况下Python用一个字典来保存一个对象的实例属性.这非常有用,因为它允许我们在运行时去设置任意的新属性. 然而,对于有着已知属性的小类来说,它可能是个瓶颈 ...
- 【转】Linux下进程/程序网络带宽占用情况查看工具 -- NetHogs
http://www.cnblogs.com/carbon3/p/5930803.html 之前VPS侦探曾经介绍过流量带宽相关的工具如:iftop.vnstat,这几个都是统计和监控网卡流量的.但是 ...
- Linux下进程/程序网络带宽占用情况查看工具 -- NetHogs
http://www.vpser.net/manage/nethogs.html 来自. 最后略有修改 之前VPS侦探曾经介绍过流量带宽相关的工具如:iftop.vnstat,这几个都是统计和监 ...
- Java逆向之UML查看工具(检索记录)
花了几个钟头时间,搜索了一下,如何从源代码得到UML,因为WCI(Writing Compilers and Interpreters,下同)越往后代码越多,必须得借助工具才能把握整个工程了.初次涉猎 ...
- java内存溢出分析工具:jmap使用实战
在一次解决系统tomcat老是内存撑到头,然后崩溃的问题时,使用到了jmap. 1 使用命令 在环境是linux+jdk1.5以上,这个工具是自带的,路径在JDK_HOME/bin/下 jmap -h ...
- 【GC概述以及查看堆内存使用】Java内存管理和GC学习
内存划分 1.JAVA内存主要划分为方法栈.方法区.堆. 2.方法栈上内存会自动释放: 3.方法区上主要加载了类的元信息.静态变量.常量.改区域又称为持久代(Perm Gen),默认是最小16M,最大 ...
- Java内存泄露监控工具:JVM监控工具介绍【转】
jstack?-- 如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程 ...
随机推荐
- opensuse13.1 安装chrome报 error while loading shared libraries:libudev.so.0:cannot open shared object file:no file or directory
1 opensuse13.1 安装chrome时 先用rpm -ivh --test **.rpm 测试安装 安装上缺少的文件 2 但是安装测试通过 却不能启动 原因 缺少一个文件 libudev ...
- 使用c#特性,给方法或类打自定义标签再反射获取
给方法打自定义标签再反射获取 1.自定义特性类 using System; using System.Collections; using System.Collections.Generic; // ...
- FZU2168——防守阵地 I——————【找规律或前缀和】
防守阵地 I Time Limit:3000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Statu ...
- solr linux配置
一.先在官网下载solr的最新版本或者你需求的版本1 目前我使用的是4.10.3(http://archive.apache.org/dist/lucene/solr/4.10.3/)2 复制到你的云 ...
- log4j 详细讲解
日志是应用软件中不可缺少的部分,Apache的开源项目log4j是一个功能强大的日志组件,提供方便的日志记录.在apache网站:jakarta.apache.org/log4j 可以免费下载到Log ...
- java gc 随记
gc为garbage collection的缩写,中文翻译为垃圾回收.垃圾为不在使用的实例.变量,回收为释放垃圾所占用的内存空间. 学习过的C语言.C++语言,是没有垃圾回收机制的,因此需要软件工程师 ...
- ReentrantReadWriteLock简介
对象的方法中一旦加入synchronized修饰,则任何时刻只能有一个线程访问synchronized修饰的方法.假设有个数据对象拥有写方法与读方法,多线程环境中要想保证数据的安全,需对该对象的读写方 ...
- Java Object类的toString()方法
Java只要定义一个类,那么它都在继承,没有说明它在继承哪个类的时候,则默认继承java.lang.Object类,也就是说Object类是所有类的父类.看下面一段代码. public class O ...
- ECMA6所有知识点大概笔记
ECMAScript和JavaScript的关系是,前者是后者的规格,后者是前者的一种实现 初学者一开始学习JavaScript,其实就是在学3.0版的语法. -------------------- ...
- JavaScript AMD 与CMD的代码区别
1:CMD 依赖就近 define(function(require,export) { var b =1; var a = require("../a"); a.dosometh ...