在java程序中,可以使用java.lang.System的exit方法来终止程序的执行,publicstaticvoidmain(String[]args){System.out.println("开始进入程序");//dosomethingSystem.out.println("程序准备退出了!");System.exit(0);//下面这句话将
public class TestShutDownHook {
public TestShutDownHook() {
doShutDownWork();
}
private void doShutDownWork() {
Runtime run=Runtime.getRuntime();//当前 Java 应用程序相关的运行时对象.
run.addShutdownHook(new Thread(){ //注册新的虚拟机来关闭钩子
@Override
public void run() {
①.0.
//程序结束时进行的操作
①.1.
System.out.println("程序结束调用");
});
public static void main(String[] args) {
new TestShutDownHook();
for (int i = 0; i 1000; i++) { // 今天这一节增添您需要处理代码 }
System.out.println(i);
在java程序中,可以使用java.lang.System的exit方法来终止程序的执行,
public static void main(String[] args) { System.out.println("开始进入程序..."); //do something System.out.println("程序准备退出了!"); System.exit(0); //下面这句话将不会打印出来 System.out.println("程序已经退出了!");}
但是使用exit方法的本质是终止了JVM的运行,如果同时运行了另外一个程序,使用exit方法同样也会使该程序也终止,要避免此种情况可以使用interrupt()来中断退出一个独立运行的过程.对于多线程程序,必须要关闭各个非守护线程.
只有在程序非正常退出时,才使用exit方法退出程序.
tasklist命令找到该程序的进程,taskkill杀掉该进程.
tomcat的启动、结束bat都是调用org.apache.catalina.startup.Bootstrap这个类实现的,startup.bat最终会执行Bootstrap.java里的
public?void?start()?throws?Exception?{?
if(?catalinaDaemon==null?)?init();
Method?method?=?catalinaDaemon.getClass().getMethod("start",?(Class?[]?)null);?
method.invoke(catalinaDaemon,?(Object?[])null);?
shutdown.bat最终会执行Bootstrap里的
public?void?stopServer()?throws?Exception?{
Method?method?=?catalinaDaemon.getClass().getMethod("stopServer",?(Class?[])?null);?
method.invoke(catalinaDaemon,?(Object?[])?null);?
你也可以这样写一个类来控制程序的启动、终止,bat就调用对应的方法.
break语句用在switch中,如果是别的中断的话,可以直接用个return即可解决,希望能帮到你.
以上就是土嘎嘎小编为大家整理的java代码终止程序相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!