java 获取内存使用情况_Java内存使用情况查看工具

本文介绍了Java内存管理中两个重要的命令工具——jstat和jmap。jstat用于查看Java进程的垃圾收集情况,如年轻代、老年代、永久代的使用情况。jmap则能详细展示堆内存的使用状态,包括各代的容量和使用率,以及导出heap dump文件。通过这些工具,开发者可以有效地监控和分析Java应用的内存使用状况。
摘要由CSDN通过智能技术生成

Java通过jvm自己管理内存,同时Java提供了一些命令行工具,用于查看内存使用情况。

这里主要介绍一下jstat、jmap命令以及相关工具。

一、jstat查看 gc实时执行情况

jstat命令命令格式:

jstat [Options] vmid [interval] [count]

命令参数说明:

Options,一般使用 -gcutil 或  -gc 查看gc 情况

pid,当前运行的 java进程号

interval,间隔时间,单位为秒或者毫秒

count,打印次数,如果缺省则打印无数次

Options 参数如下:

-gc:统计 jdk gc时 heap信息,以使用空间字节数表示

-gcutil:统计 gc时, heap情况,以使用空间的百分比表示

-class:统计 class loader行为信息

-compile:统计编译行为信息

-gccapacity:统计不同 generations(新生代,老年代,持久代)的 heap容量情况

-gccause:统计引起 gc的事件

-gcnew:统计 gc时,新生代的情况

-gcnewcapacity:统计 gc时,新生代 heap容量

-gcold:统计 gc时,老年代的情况

-gcoldcapacity:统计 gc时,老年代 heap容量

-gcpermcapacity:统计 gc时, permanent区 heap容量

示例

$ jstat -gc 12538 5000

每5 秒一次显示进程号为 12538的 java进成的 GC情况,结果如下图:

a27607f14684e4763bcc950b2b823130.png

结果说明

标志

说明

S0C

年轻代中第一个survivor区的容量 (字节)

S1C

年轻代中第二个survivor区的容量 (字节)

S0U

年轻代中第一个survivor区目前已使用空间 (字节)

S1U

年轻代中第二个su

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值