Python 信号量

kkkkk 2018年12月17日 22:48 Python基础

信号的概念

信号(signal)--     进程之间通讯的方式,是一种软件中断。一个进程一旦接收到信号就会打断原来的程序执行流程来处理信号。

几个常用信号:

SIGINT     终止进程  中断进程  (control+c)

SIGQUIT   退出进程

SIGTERM   终止进程     软件终止信号  (默认信号)

SIGKILL   终止进程     杀死进程

SIGALRM 闹钟信号

 

例如,要在按下control+c终止进程的时候,做些处理,代码如下:

import signal

def fun(sig, stack_frame):
  print 'eixt %d, %s' % (sig,stack_frame)
  exit(1)

signal.signal(signal.SIGINT, fun)

 

signal.signal(signal.SIGINT, fun)用来注册信号量的处理函数,

第一个参数是信号量,第二个参数可以传一个函数,

这个函数默认带有两个参数,第一个参数sig表示接收的信号量,第二个stack_frame可以理解为产生中断信号量sig的调用堆栈.


文章评论(0)
  • avatar kkkkkk 2018年12月21日 11:31
    Youkou老师真帅
    kkkkk
    2018年12月21日 11:16
    叙事鸡零狗碎,议论空洞粗浅,结构呆板单一。
    回复
  • avatar kkkkkk 2018年12月21日 11:31
    牛逼
    kkkkklxinde
    2018年12月21日 11:17
    诠释明确,措辞顺当。说理调畅,议论允当。文气充沛,段落分明思想敏捷,眼光远大。
    回复
  • avatar kkkkklxinde 2018年12月21日 11:17
    诠释明确,措辞顺当。说理调畅,议论允当。文气充沛,段落分明思想敏捷,眼光远大。
    回复
  • avatar kkkkk 2018年12月21日 11:16
    叙事鸡零狗碎,议论空洞粗浅,结构呆板单一。
    回复