Java虚拟机--JVM介绍 和 常见问题解决

  JVM (Java Virtual Machine ):Java虚拟机,简称JVM,是运行所有Java程序的假想计算机,是Java程序的运行环境,是Java 最具吸引力的特性之一,它有自己的指令集(class字节码)以及各种运行时内存区域。我们编写的Java代码都运行在 JVM 之上。

  跨平台 :任何软件的运行,都必须要运行在操作系统之上,而我们用Java编写的软件可以运行在任何的操作系统上,这个特性称为Java语言的跨平台特性。该特性是由JVM实现的,我们编写的程序运行在JVM上,而JVM运行在操作系统上。JVM是怎么实现的呢?其实JVM相当于翻译机,它把我们所写的java代码根据不同的平台进行翻译,使其能在各种平台运行。

  

  如上图所示,Java的虚拟机本身不具备跨平台功能的,每个操作系统下都有不同版本的虚拟机。

CPU占用过多:  pid(进程id)  tid(线程id)

  

    

 垃圾回收后,内存占用仍然很高:

  使用 jconsole 工具:不仅可以监控内存、线程、类等,还可以手动执行GC

  使用 jvisualvm 工具:除了有 jconsole 功能,还可以进行堆转储(dump),抓取堆的当前快照,进一步分析

    

原文地址:https://www.cnblogs.com/roadlandscape/p/12042137.html