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的调用堆栈.

上一篇:python信号量


下一篇:Python系列之 - 锁(GIL,Lock,Rlock,Event,信号量)