Python中常用信号signal类型实例

时间:2021-05-22

本文研究的主要是Python中的Signal 信号的相关内容,具体如下。

常用信号类型

  • SIGINT 终止进程 中断进程,不可通过signal.signal()捕捉(相当于Ctrl+C)
  • SIGTERM 终止进程 软件终止信号,可通过signal.signal()捕捉(默认信号,当os.kill()没有指明信号类型时,默认的是该信号)
  • SIGKILL 终止进程 杀死进程,不可捕捉(相当于linux下的kill命令,windows下使用会抛出异常)
  • SIGALRM 闹钟信号 可以通过signal.alarm()和os.kill()发送该信号,可通过signal.signal()捕捉
  • SIGQUIT 退出进程 和SIGTERM类似,可通过signal.signal()捕捉
  • a.py

    #coding=utf8 import signal,os,time def onsignal_term(a,b): print '收到SIGTERM信号' def onsignal_quit(a,b): print '收到SIGQUIT信号' def onsignal_alrm(a,b): print '收到SIGALRM信号' signal.signal(signal.SIGTERM,onsignal_term) signal.signal(signal.SIGQUIT,onsignal_quit) signal.signal(signal.SIGALRM,onsignal_alrm) signal.alarm(10) while 1: print '进程id:',os.getpid() time.sleep(2)

    b.py

    import os,signal,time os.kill(5097,signal.SIGTERM) time.sleep(5) #如果进程被终止后面的信号不会起作用 os.kill(4976,signal.SIGINT) os.kill(5006,signal.SIGKILL) os.kill(5071,signal.SIGQUIT) os.kill(5097,signal.SIGALRM)

    总结

    以上就是本文关于Python中常用信号signal类型实例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

    声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

    相关文章