Мне просто интересно, почему я зарегистрировал функцию atexit ... например,
import atexit
atexit.register(somefunc)
...
AppHelper.runEventLoop()
Конечно, я знаю, когда atexit
не будет работать. Когда я комментирую AppHelper.runEventLoop()
, вызывается функция atexit
. Я также просмотрел мое pyobjc
яйцо и увидел под __init__.py
под objc
package следующий код:
import atexit
atexit.register(recycleAutoreleasePool)
Я искал любую ссылку в яйце безрезультатно. Я также попытался окружить оболочку try-finally вокруг AppHelper.runEventLoop()
, и команды в блоке finally не будут вызваны.
Надеюсь, кто-нибудь может мне помочь.
P.S. Предполагая, что я не хочу использовать метод делегата приложения applicationShouldTerminate:
...