首页 > 编程语言 >DestoryJavaVM停止HotSpotVM的步骤

DestoryJavaVM停止HotSpotVM的步骤

时间:2023-01-29 17:32:40浏览次数:44  
标签:DestoryJavaVM HotSpotVM Java 步骤 VM HotSpot 线程 shutdown 停止

1、一直等待,直到只有一个非守护的线程执行,注意此时HotSpot VM仍然可用;

2、调用java.lang.Shutdown.shutdown()方法,它会调用Java上的shutdown钩子方法,如果finalization-on-exit为true,则运行Java对象的finalizer;

3、运行HotSpot VM上的shutdown钩子(通过JVM_OnExit注册),停止以下线程;性能分析器、统计数据抽样器、监控线程及垃圾收集器线程。发出状态事件通知JVMNI,然后关闭JVMTI、停止信号线程;

4、调用HotSpot的JavaThread::exit()方法释放JNI处理块,移出保护页,并将当前线程从已知线程队列中移除。从这时起,HotSpot就无法执行任何Java代码了;

5、停止HotSpot VM线程,将遗留的HotSpot VM线程带到安全点兵停止JIT编译器线程;

6、停止追踪JNI,HotSpot VM及JVMTI屏障;

7、为哪些仍然以本地代码运行的线程设置标记“vm exited”;

8、删除当前线程;

9、删除或移除所有的输入/输出流,释放PerfMemory(性能统计内存)资源;

10、最后返回到调用者。

标签:DestoryJavaVM,HotSpotVM,Java,步骤,VM,HotSpot,线程,shutdown,停止
From: https://blog.51cto.com/u_11315052/6025885

相关文章

  • 新买的陶瓷餐具清洗步骤
    新买的陶瓷餐具可按下面的步骤清洗:1.先用热水浸泡清洗一遍,主要是为了清除餐具表面粘附的灰尘和水溶性残留物。2.再加4%~5%的食醋到水中,煮开后放入餐具浸泡1~2小时,目的是中和......
  • HotSpot VM启动时JNI_CreateJavaVM方法执行步骤
    1、确保只有一个线程调用这个方法并且确保只创建一个HotSpotVM实例。因为HotSpotVM创建的静态数据结构无法再次初始化,所以一旦初始化达到某个确定点后,进程空间里就只能有......
  • 成功脱单的6个步骤,程序员全都收藏了
    时间过的真快,又到了一年好几度的全民大虐狗的日子,作为最受影射的人群之一程序猿,小编觉得去年受的伤还没有平复呢,今天虐狗之箭又要向我射来。 讲真,作为一个无比专业的程序猿......
  • 大数据学习连载02篇:业务分析步骤、数据的收集、整理、展现以及工作报告
    大数据业务分析基本步骤典型的大数据分析包含以下几个步骤:(1)明确分析目的和思路明确数据分析目的以及确定分析思路,是确保数据分析过程有效进行的先决条件,它可以为数据的收集......
  • 怎么快速删除同一CAD图层中的文字?CAD图层文字删除步骤
    在CAD设计过程中,有些时候会在CAD图纸中添加许多注释,如果想要将某一CAD图层中的文字全部或者框选部分删除,如何快速操作呢?下面就和小编一起来了解一下浩辰CAD软件中通过调用......
  • CAD中如何计算点光源的照度?CAD计算点照度步骤
    在电气CAD图纸设计过程中,如果想要用CAD计算点光源的照度,该如何操作?本节课程小编就以浩辰CAD电气软件为例来给大家分享一下CAD计算点照度的具体操作步骤吧!CAD计算点照度步......
  • rest开发步骤
    rest开发步骤1)代码工厂自动生成RESTCRUD代码。自动生成的代码:unitrest.tunit;//代码由代码工厂自动生成//2023-01-2813:20:07{$Idef.inc}interfaceuses{......
  • echarts配置步骤
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><metahttp-equiv=......
  • 这几个步骤,让你的电脑避免卡顿~
    C盘主要是系统运行的存储空间,如果C盘装满了东西,那就意味着电脑的存储空间小,电脑运行就会更慢。......
  • liunx系统安装Redis详细步骤
    liunx系统安装Redis详细步骤官网下载Redis安装包使用工具将redis安装包拖入liunx系统创建Redis存放目录mkdir/usr/local/redis解压到redis存放目录tar-zxvfred......