Java 对系统信号的通知获取

本文介绍了一个Java示例,展示了如何通过实现SignalHandler接口来监听和处理系统信号,如USR2。文章列出了macOS支持的所有信号,并提供了使用kill命令发送信号通知的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

主要介绍Java 如何对系统信号通知进行获取和处理。直接上demo

@SuppressWarnings("restriction")
public class Test1 implements SignalHandler {

@Override
public void handle(Signal sn) {
System.out.println(sn.getName() + "is recevied.");
}

public static void main(String[] args) throws InterruptedException {
Test1 testSignalHandler = new Test1();
// install signals
Signal.handle(new Signal("USR2"), testSignalHandler);
for (;;) {
Thread.sleep(3000);
System.out.println("running......");
}
}
} 

mac 能支持的信号有: kill -l

 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL

 5) SIGTRAP 6) SIGABRT 7) SIGEMT 8) SIGFPE

 9) SIGKILL 10) SIGBUS 11) SIGSEGV 12) SIGSYS

13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGURG

17) SIGSTOP 18) SIGTSTP 19) SIGCONT 20) SIGCHLD

21) SIGTTIN 22) SIGTTOU 23) SIGIO 24) SIGXCPU

25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH

29) SIGINFO 30) SIGUSR1 31) SIGUSR2

 

信号通知方式:kill -USR2 pid

 

转载于:https://www.cnblogs.com/chenkaiyin1201/p/10755908.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值