运行代码在Java代理后执行? post主要?

Running code in Java Agents after the execution? post main?

我正在使用代码检测(使用 Javassist 进行检测)与 Java 代理(创建探查器)合作。在 java 程序完全执行后,我需要 运行 在我的 Java 代理探查器中使用一些功能。 main 函数之后的东西,比如 post-main(就像我们有 premain)。这可能吗?

没有postmain方法这样的东西,它的语义也不清楚。许多程序 运行 直到它们被杀死。这要求应用程序终止而不是 运行 不同的代码。

Java 通过 Runtime class 提供关闭挂钩,这些挂钩在应用程序终止时触发,但不得执行长期操作。此外,如果程序被终止,它们也不会被执行。

对于探查器,您需要定期处理数据,并且您可以在没有保证的情况下尝试在终止时刷新缓冲区。