4365 // + Call java.lang.Shutdown.shutdown(), which will invoke Java level |
4365 // + Call java.lang.Shutdown.shutdown(), which will invoke Java level |
4366 // shutdown hooks |
4366 // shutdown hooks |
4367 // + Call before_exit(), prepare for VM exit |
4367 // + Call before_exit(), prepare for VM exit |
4368 // > run VM level shutdown hooks (they are registered through JVM_OnExit(), |
4368 // > run VM level shutdown hooks (they are registered through JVM_OnExit(), |
4369 // currently the only user of this mechanism is File.deleteOnExit()) |
4369 // currently the only user of this mechanism is File.deleteOnExit()) |
4370 // > stop StatSampler, watcher thread, CMS threads, |
4370 // > stop StatSampler, watcher thread, |
4371 // post thread end and vm death events to JVMTI, |
4371 // post thread end and vm death events to JVMTI, |
4372 // stop signal thread |
4372 // stop signal thread |
4373 // + Call JavaThread::exit(), it will: |
4373 // + Call JavaThread::exit(), it will: |
4374 // > release JNI handle blocks, remove stack guard pages |
4374 // > release JNI handle blocks, remove stack guard pages |
4375 // > remove this thread from Threads list |
4375 // > remove this thread from Threads list |