訊號(signal)-- 程式之間通訊的方式,是一種軟體中斷。一個行程一旦接收到訊號就會打斷原來的程式執行流程來處理訊號。
幾個常用訊號:
SIGINT 終止程序 中斷程序 (control+c)
SIGQUIT 退出程序
SIGTER訊號)
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的訊號的詳細內容。更多資訊請關注PHP中文網其他相關文章!