signal 包主要针对Unix平台
import signal print(signal.SIGALRM) print(signal.SIGCONT) >>> 14 19
singnal.signal(signalnum, handler)
signalnum为某信号,handler为该信号的处理函数
当handler为signal.SIG_IGN时,信号被无视(ignore). 当handler为signal.SIG_DFL, 进程采取默认操作
import signal def myHandler(signum, frame): print('I received: ', signum) signal.signal(signal.SIGTSTP, myHandler) signal.pause() print('End of Signal Demo') >>> CTRL+Z会可以发生SIGTSTP信号
import signal def myHandler(signum, frame): print("Now, it's the time") exit() signal.signal(signal.SIGALRM, myHandler) signal.alarm(1) while True: print('not yet') >>> not yet not yet not yet Now, it's the time
os.kill(pid, sid) os.killpg(pgid, sid)