1
我只是想知道爲什麼我註冊了一個atexit函數...例如如何確保註冊的atexit函數能夠在PyObjC的AppHelper.runEventLoop()中運行?
import atexit
atexit.register(somefunc)
...
AppHelper.runEventLoop()
當然,我知道什麼時候atexit
將無法正常工作。當我註釋掉AppHelper.runEventLoop()
時,會調用atexit
函數。我也瀏覽我的pyobjc
雞蛋,我__init__.py
下看了下objc
包下面的代碼:
import atexit
atexit.register(recycleAutoreleasePool)
我尋找無果蛋內的任何引用。我也嘗試圍繞一個圍繞AppHelper.runEventLoop()
的try-finally shell,並且finally塊中的命令不會被調用。
希望有人能幫助我在這裏。
P.S.假設我不想使用應用程序代理的方法applicationShouldTerminate:
...