15得票2回答
Java注解处理:如何知道当前轮次是否为最后一轮?

当扩展AbstractProcessor时,有可能会覆盖init(...)方法,但却没有相应的 "相反" 方法,可以在处理所有轮后调用。 这是一个问题:当您需要将每一轮收集到的信息追加到同一个文件时,您永远无法关闭该文件,因为您永远不知道最后一轮何时结束。 因此,该文件从未被关闭并保持为空白...

14得票2回答
Java程序中如何使用CTRL-C?

当我在控制台按下ctrl-c时,应用程序线程的停止顺序和关闭钩子的调用顺序是怎样的?

13得票1回答
PHP的register_shutdown_function如何在命令行关闭脚本时触发?

当通过命令行(使用Ctrl+c)或使用kill命令终止cron进程时,是否有可能调用函数? 我尝试过register_shutdown_function(),但在脚本被杀死时似乎没有被调用,但在脚本正常结束时会被调用。 我正在尝试在cron实例自动终止(即运行时间过长)时将结果记录到文件并...

13得票1回答
13得票1回答
如果从关闭挂钩中调用System.exit会发生什么?

我在Java中有一个相当复杂的关闭问题 - 有很多清理工作要做。 特别是,我正在尝试弄清楚如何从shutdown hook线程进行错误处理。 我目前的代码包括以下内容:try { return shutdownPromise = doShutdown(); } catch (Throw...

13得票2回答
关机钩子 vs 终结器方法

我不明白为什么必须使用Runtime.addShutdownHook。如果你想在jvm退出时进行一些清理工作,为什么不只是过载守护类的finalize方法呢?使用shutdown hook相比finalize方法有何优势? 此外还有一个已弃用的函数runFinalizersOnExit。如果...

12得票1回答
适用于“普通”Java应用程序和Web应用程序的库关闭例程。

我维护一个JDBC驱动程序,该驱动程序还通过本地库提供了嵌入式数据库服务器模式,该本地库通过JNA访问。关闭过程作为卸载本地库本身的一部分运行时,在Windows上由于卸载其依赖项的顺序而遇到问题。为避免访问冲突或其他问题,我需要在卸载此库之前显式关闭嵌入式引擎。 由于其使用方式的特殊性,很...

11得票1回答
以编程方式在log4j 2中禁用关闭挂钩

可以通过配置在log4j2中禁用关闭挂钩(shutdown hooks): <Configuration shutdownHook="disable"> 是否可以通过编程实现这一点?

8得票3回答
Java关闭挂钩多线程

我正在尝试在我的Ubuntu服务器上让一个关闭挂钩生效,但是似乎存在多个线程的问题。使用基本的ShutdownHook时,当我使用“kill <PID>”杀死进程时,下面的代码确实可以工作,这意味着关闭行为被激活。 public static void main(String[]...

7得票2回答
如何在Java shutdown hook中获取返回代码

我需要根据我的应用程序结果修改JVM的返回代码。 但是明确调用System.exit(code)存在风险,因为该应用程序很复杂,难以确定运行线程的结束时间。 因此,我想到使用关闭挂钩来在JVM退出之前修改返回代码。 但是有一个问题,我如何获取JVM的原始返回代码,因为它可能是一个错误代码...