jvm基础

发布时间 2023-05-04 13:43:46作者: xingmeng1

 

jvm 中两个线程:

  1、守护线程:jvm自己使用的线程,比如垃圾回收(GC)就是一个守护线程

  2、普通线程:一般的java程序线程,只要JVM中有普通线程在执行,那么JVM就不会停止

 

结束生命周期

在如下几种情况下,Java虚拟机将结束生命周期

1、执行了System.exit()方法

2、程序正常执行结束

3、程序在执行过程中遇到了异常或错误而终止进程

4、由于操作系统出现错误而导致Java虚拟机进程终止

 

JDK和JRE的区别

  JDK是面向开发人员使用的SDK,它提供了java的开发环境和运行环境,JDK中包含JRE

  JRE是java的运行环境,是面向所有java程序的使用者,包括开发者

 

JVM的结构体系

 

方法区:

  用于存储JVM加载完成的类型信息、常量、静态变量、即时编译器编译后的代码缓存,方法区和 Java 堆区一样,都是线程共享的内存区域。

  

在JDK8以前,使用永久代的方式来实现方法区