Java 我们可以禁用JVM心跳还是阻止它杀死我的小程序

Java 我们可以禁用JVM心跳还是阻止它杀死我的小程序,java,plugins,applet,Java,Plugins,Applet,我的小程序意外终止。从日志中,我可以看到 JVM心跳。。死亡,发送ts:654648165466,现在发送ts:654658163729,dT 9998263 我有一个关机钩子来查看谁在杀死小程序&我得到了以下信息 堆栈跟踪………线程[Java插件心跳线程,5,main] java.lang.Object.wait(Native Method) java.lang.Thread.join(Unknown Source) java.lang.Thread.join(Unknown Source)

我的小程序意外终止。从日志中,我可以看到

JVM心跳。。死亡,发送ts:654648165466,现在发送ts:654658163729,dT 9998263

我有一个关机钩子来查看谁在杀死小程序&我得到了以下信息

堆栈跟踪………线程[Java插件心跳线程,5,main]

java.lang.Object.wait(Native Method)
java.lang.Thread.join(Unknown Source)
java.lang.Thread.join(Unknown Source)
java.lang.ApplicationShutdownHooks.runHooks(Unknown Source)
java.lang.ApplicationShutdownHooks$1.run(Unknown Source)
java.lang.Shutdown.runHooks(Unknown Source)
java.lang.Shutdown.sequence(Unknown Source)
java.lang.Shutdown.exit(Unknown Source)
java.lang.Runtime.exit(Unknown Source)
java.lang.System.exit(Unknown Source)
sun.plugin2.main.client.PluginMain.exit(Unknown Source)
sun.plugin2.main.client.PluginMain.access$1300(Unknown Source)
sun.plugin2.main.client.PluginMain$HeartbeatThread.run(Unknown Source)

我不明白为什么心跳线程在这里工作。我没有多个JVM&它是没有任何套接字通信的单个applet。从PluginMain的源代码到服务器的唯一数据传输是通过http

,看起来我们可以通过将环境变量JPI_PLUGIN2_NO_HEARTBEAT设置为某个值来防止HeartBeatThread启动