欢迎光临
我们一直在努力

jvmcpu(jvmcpu占用过高)

Linux中如何精准定位JVM线程CPU过高

第一步:先找出java的进程Id(PID) 假设java应用名称是zcg_commodity

ps -ef|grep zcg_commodity

得到进程Id为32464

第二步:找出该进程内最消耗CPU的线程

top -Hp pid

输入top -Hp 32464

TIME列就是各个java线程耗费的CPU的时间,比如图中是线程ID的为2012的线程,

通过 printf “%xn” 2012

得到2012的十六进制为 7dc

第三步:

一般会进到jdk的bin目录下,root权限执行

jstack 32464|grep 7dc

搜一下:Linux中如何精准定位JVM线程CPU过高

jvmcpu

手机中JVM内存是什么意思?是干嘛用的?

java虚拟机,要运行java程序必须要先有它,JVM就相当于一个能运行JAVA程序的操作系统,就像windows是能运行exe程序的操作平台。

就是因为有了JVM,所以java程序才能在跨平台上运行,电脑(比如说windows和linux等)和手机(普通手机和S60等)上都拥有它们相应版本的JVN平台。只是分的两个区域而已, 新对象都会在eden区, 满了之后会清理, 如果满足需要保留的条件, 就会放到survivor区, 顾名思义 就是幸存者. 详细的原理请看专业书籍java虚拟机,运行java程序的,有jvm才能运行java程序

赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《jvmcpu(jvmcpu占用过高)》
文章链接:https://www.6buu.com/320195.html
本站资源仅供个人学习交流,不允许用于商业用途,否则法律问题自行承担。

评论 抢沙发