Java
文章平均质量分 66
求你了,不要让我加班
这个作者很懒,什么都没留下…
展开
-
JAVA主线程Sleep以后,Eden不断增加
JAVA主线程Sleep以后,Eden不断增加问题实操结论问题 今天在进行Demo实验的时候将Demo的主线程进行Sleep后,通过jvisualvm连接发现Eden堆的使用不断增大实操然后发现线程并不是只有我Java的主线程在活动之后我通过命令行,发现EU(Eden)的使用并不会一直增加,会固定在某一个值jps 找到我的pidjstat -gc pid 虚拟机统计信息监视工具查看堆信息结论我们通过jvisualvm连接程序时,即使我们的程序只有一个主线程,但是JVM是有众原创 2021-08-04 17:23:11 · 988 阅读 · 0 评论 -
JConsole:Java监视与管理控制台
目录JConsole:Java监视与管理控制台启动JConsole内存监控线程监控JConsole:Java监视与管理控制台 JConsole(Java Monitoring and Management Console)是一款基于JMX(Java Manage-ment Extensions)的可视化监视、管理工具。它的主要功能是通过JMX的MBean(Managed Bean)对系统进 行信息收集和参数动态调整。JMX是一种开放性的技术,不仅可以用在虚拟机本身的管理上,还可以 运行于虚拟机之上的软翻译 2021-08-02 11:12:36 · 664 阅读 · 0 评论 -
jhat:虚拟机堆转储快照分析工具
jhat:虚拟机堆转储快照分析工具JDK提供jhat(JVM Heap Analysis Tool)命令与jmap搭配使用,来分析jmap生成的堆转储快照。 jhat内置了一个微型的HTTP/Web服务器,生成堆转储快照的分析结果后,可以在浏览器中查看。不过 实事求是地说,在实际工作中,除非手上真的没有别的工具可用,否则多数人是不会直接使用jhat命令 来分析堆转储快照文件的,主要原因有两个方面。一是一般不会在部署应用程序的服务器上直接分析 堆转储快照,即使可以这样做,也会尽量将堆转储快照文件复制到其他原创 2021-07-16 11:25:08 · 121 阅读 · 0 评论 -
jmap:Java内存映像工具
jmap:Java内存映像工具jmap:Java内存映像工具jmap -finalizerinfo:显示在F-Queue中等待Finalizer线程执行的finalize方法对象jmap -heap:显示堆详细信息jmap -histo:显示堆中对象统计信息,包括类、实例数量、合计容量jmap -permstat:以ClassLoader为统计口径显示永久代内存状态jmap:Java内存映像工具jmap(Memory Map for Java)命令用于生成堆转储快照(一般称为heapdump或dump转载 2021-07-16 11:19:53 · 301 阅读 · 0 评论 -
jinfo:Java配置信息工具
jinfo:Java配置信息工具jinfo(Configuration Info for Java)的作用是实时查看和调整虚拟机各项参数。使用jps命令的-v参 数可以查看虚拟机启动时显式指定的参数列表,但如果想知道未被显式指定的参数的系统默认值,除 了去找资料外,就只能使用jinfo的-flags选项进行查询了(如果只限于JDK 6或以上版本的话,使用java- XX:+PrintFlagsFinal查看参数默认值也是一个很好的选择)。jinfo还可以使用-sysprops选项把虚拟机 进程的Syst原创 2021-07-16 11:09:48 · 118 阅读 · 0 评论 -
jstat虚拟机统计信息监视工具
jstat虚拟机统计信息监视工具jstat(JVM Statistics Monitoring Tool)是用于监视虚拟机各种运行状态信息的命令行工具。它可 以显示本地或者远程[1]虚拟机进程中的类加载、内存、垃圾收集、即时编译等运行时数据,在没有 GUI图形界面、只提供了纯文本控制台环境的服务器上,它将是运行期定位虚拟机性能问题的常用工 具。jstat命令格式为:jstat [ option vmid [interval[s|ms] [count]] ]对于命令格式中的VMID与LVM翻译 2021-07-14 18:53:55 · 115 阅读 · 0 评论 -
通过jps查看虚拟机进程状况
jps:虚拟机进程状况工具JDK的很多小工具的名字都参考了UNIX命令的命名方式,jps(JVM Process Status Tool)是其中 的典型。除了名字像UNIX的ps命令之外,它的功能也和ps命令类似:可以列出正在运行的虚拟机进 程,并显示虚拟机执行主类(Main Class,main()函数所在的类)名称以及这些进程的本地虚拟机唯一 ID(LVMID,Local Virtual Machine Identifier)。虽然功能比较单一,但它绝对是使用频率最高的JDK 命令行工具,因为其他的原创 2021-07-12 19:15:08 · 929 阅读 · 0 评论 -
实战:内存分配与回收策略
对象优先在Eden分配大多数情况下,对象在新生代Eden区中分配。当Eden区没有足够空间进行分配时,虚拟机将发起 一次Minor GC。大对象直接进入老年代大对象就是指需要大量连续内存空间的Java对象,最典型的大对象便是那种很长的字符串,或者 元素数量很庞大的数组,本节例子中的byte[]数组就是典型的大对象。大对象对虚拟机的内存分配来说 就是一个不折不扣的坏消息,比遇到一个大对象更加坏的消息就是遇到一群“朝生夕灭”的“短命大对 象”,我们写程序的时候应注意避免。在Java虚拟机中要避免大对象原创 2021-07-10 11:37:52 · 124 阅读 · 0 评论