Tag: 退出

当一个线程被中断/杀死时,最终块可能无法执行吗?

在Java教程中,它说到try { … } finally { … } : 注意:如果在执行try或catch代码时JVM退出,则finally块可能无法执行。 同样,如果执行try或catch代码的线程被中断或终止,则即使应用程序作为一个整体继续 ,finally块也可能不会执行。 是否可以中断或杀死一个线程( 我认为这是不可能的? ),以便在运行此线程的JVM 未退出/ finally时不会执行finally块? (我很困惑,因为上面引用的内容非常明确,误解的空间不大。) 编辑:将问题分解为其核心意图。

System.exit(0)vs JFrame.EXIT_ON_CLOSE

这两者之间有什么区别吗? 我正在阅读一篇关于你应该总是使用的文章( http://www.javalobby.org/java/forums/t17933 ) System.exit(0); 目前我用 JFrame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ); 文章说,即使对于Java Swing应用程序,您也应该添加一个侦听器WindowAdapter ,并在其方法windowClosing(WindowEvent e)调用System.exit() windowClosing(WindowEvent e) 。 有什么区别吗? 一种方法比另一种更好吗?

是什么导致Java在System.exit()之后继续运行?

我有一个Java程序,它是通过另一个Java程序的ProcessBuilder启动的。 从子程序调用System.exit(0) ,但是对于我们的一些用户(在Windows上),与子项关联的java.exe进程不会终止。 子程序没有关闭挂钩,也没有可能阻止System.exit()终止VM的SecurityManager 。 我无法在Linux或Windows Vista上自行重现此问题。 到目前为止,问题的唯一报告来自两个Windows XP用户和一个Vista用户,使用两个不同的JRE(1.6.0_15和1.6.0_18),但他们每次都能够重现问题。 任何人都可以提出为什么JVM在System.exit()之后无法终止的原因,然后只在某些机器上? 编辑1:我让用户安装JDK,这样我们就可以从违规的虚拟机中获取一个线程转储。 用户告诉我的是,一旦他点击我的菜单中的“退出”项,VM进程就会从VisualVM中消失—但是,根据Windows任务管理器,该进程尚未终止,无论多长时间用户等待(分钟,小时),它永远不会终止。 编辑2:我现在已经确认父程序中的Process.waitFor()永远不会返回至少一个有问题的用户。 总而言之:孩子VM似乎已经死了(VisualVM甚至没有看到它),但是父母仍然认为这个过程是实时的,Windows也是如此。

Windows关闭时的Java退出

我有这个代码。 如果检测到计算机正在关闭,我想退出我的Java应用程序。 我有这个问题,如果在Windows上点击关机我的java应用程序断开与Android应用程序连接。 我想显示java应用程序已断开连接或将退出。 // Copyright 2012 // Android Remote Desktop Server Ver. 1.0 import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.net.*; import java.util.Random; public class ServerWindow implements ActionListener{ private RemoteDataServer server; private Thread sThread; //server thread private static final int WINDOW_HEIGHT = 200; private static final int WINDOW_WIDTH = 350; private String ipAddress; private […]

Java:如何取消应用程序退出

在我的一个程序中,我希望在用户尝试退出应用程序时显示一个Dialog。 然后,用户必须选择保存程序的某些状态,而不是保存或取消退出操作。 我写这个是为了首先找到解决方案,然后实现它: import javax.swing.*; import java.awt.Dimension; import java.awt.event.*; class WL implements WindowListener { private boolean statussaved; private JFrame tframe; WL (JFrame frame) { statussaved = false; tframe = frame; } @Override public void windowActivated (WindowEvent w) { } @Override public void windowClosed (WindowEvent w) { } @Override public void windowDeactivated (WindowEvent w) { } […]

java swing关闭窗口没有退出应用程序

我有一个小框架,我问用户和密码。 单击主窗口中的按钮将打开此框架。 然后我有两个按钮:确定和取消。 当我点击“取消”按钮时,我需要关闭此框架而不退出应用程序。 我怎样才能做到这一点?

Java:如何只处理SIGTERM?

Java中是否有办法处理收到的SIGTERM? 我正在运行一个java服务,但是当用户注销时不想关闭我的java服务。 想要仅覆盖sigterm关闭处理程序,但保留其余信号的处理程序。 信号细节 这个qns略有变化

Swout应用程序的OnExit事件?

我正在开发一个简单的应用程序来使用Swing管理业务的操作部分,但我需要在应用程序退出时执行以下操作: updateZonas(); db.close(); 但是我怎么能这样做呢?