JVM进程的退出是由于JVM进程种没有活跃的非守护线程,或是收到了系统中断信号,向JVM程序注入一个Hook线程,在JVM进程退出的时候,Hook线程会启动执行,通过Runtime可以为JVM注入多个Hook线程:
结果:
The program will is stopping.
The hook thread 1 is running.
The hook thread 2 is running.
The hook thread 1 will exti.
The hook thread 2 will exti.
Hook线程实战,在开发中经常会遇到Hook线程,比如说为了防止某个程序被重复启动,资源的释放,
但是尽量不要做耗时较长的操作,使用kill -9 那么进程不会触发Hook线程(如果有的话)