2
簡單問題;你如何讀取被稱爲信號處理函數的函數的返回值?Python信號:從信號處理函數讀取返回
import signal
def SigHand(sig, frm):
return 'SomeValue'
signal.signal(signal.SIGCHLD, SigHand)
signal.pause()
有沒有辦法讀取除了將其設置爲全局的返回值'SomeValue'
?
簡單問題;你如何讀取被稱爲信號處理函數的函數的返回值?Python信號:從信號處理函數讀取返回
import signal
def SigHand(sig, frm):
return 'SomeValue'
signal.signal(signal.SIGCHLD, SigHand)
signal.pause()
有沒有辦法讀取除了將其設置爲全局的返回值'SomeValue'
?
您可以使用返回值屬性創建一個簡單的類。
>>> import signal
>>> class SignalHandler(object):
... def __init__(self):
... self.retval = None
... def handle(self, sig, frm):
... self.retval = sig
...
>>> s = SignalHandler()
>>> s.retval
>>> signal.signal(signal.SIGALRM, s.handle)
0
>>> signal.alarm(1)
0
>>> s.retval
14