当前位置:   article > 正文

java 捕获kill_java捕获kill信号来处理程序信息例子

java 捕获 kill命令

下面我们一起来看一个关于java捕获kill信号来处理程序信息例子,希望这个例子能够给各位朋友带来帮助。

在c中常要控制对应的信号信息,在java中也可以实现简单的信号捕获;

可以作为程序的关闭时候清理数据做参考,

程序如下:

package com.i5a6.signal;

import sun.misc.Signal;

import sun.misc.SignalHandler;

public class TestSignal implements SignalHandler{

public static void main(String[] args) throws InterruptedException {

TestSignal tsh = new TestSignal();

Signal.handle(new Signal("TERM"), tsh);  // kill -15 common kill

Signal.handle(new Signal("INT"), tsh);   // Ctrl c

//Signal.handle(new Signal("KILL"), tsh);  // kill -9  no Support

//Signal.handle(new Signal("USR1"), tsh);   // kill -10

//Signal.handle(new Signal("USR2"), tsh);   // kill -12

for(;;)

{

Thread.sleep(3000);

System.out.println("running ......");

}

}

private void signalCallBack(Signal sn)

{

System.out.println(sn.getName() " is recevied.");

}

@Override

public void handle(Signal sn) {

signalCallBack(sn);

}

}

在eclipse下编写,要调整compiled的访问和警告后,打成可以运行的jar包;

执行: java -jar TS.jar

然后发送kill指令可以看到成功捕获信号

注释的几个都不能去注册监听,记录下

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/265977?site
推荐阅读
相关标签
  

闽ICP备14008679号