我有一个 Eclipse RCP GUI 应用程序的命令行版本,它可以使用许多相同的插件(这对于集成测试很方便)。它所做的一件事是连接到服务器,请求内容并启动交互式循环。要退出,GUI 应用程序的用户可以停止循环并关闭应用程序。
在我的命令行应用程序中,“关闭”应用程序最明显的方法是 CTRL-C!但是,如果我可以捕获退出信号,这会在服务器上留下可以清理的“会话垃圾”。杂物最终会超时或其他什么,但如果我也能把它清理干净就好了。
那么,我有哪些选择可以从 Eclipse RCP 应用程序中捕获终止信号?如果有帮助,这是特定于 Linux 的。但我不加载任何 SWT 插件。当我 ctrl-c 命令行时,不会调用我的“主循环”Plugin.stop()。像 Python 的 KeyboardInterrupt 这样的东西会是王牌!