Python中常用信号signal类型实例

(编辑:jimmy 日期: 2024/11/19 浏览:2)

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

常用信号类型

  1. SIGINT 终止进程 中断进程,不可通过signal.signal()捕捉(相当于Ctrl+C)
  2. SIGTERM 终止进程 软件终止信号,可通过signal.signal()捕捉(默认信号,当os.kill()没有指明信号类型时,默认的是该信号)
  3. SIGKILL 终止进程 杀死进程,不可捕捉(相当于linux下的kill命令,windows下使用会抛出异常)
  4. SIGALRM 闹钟信号 可以通过signal.alarm()和os.kill()发送该信号,可通过signal.signal()捕捉
  5. 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类型实例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

一句话新闻

一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?