appkit应用程序中的自动释放池

时间:2010-10-28 22:28:21

标签: cocoa memory-management autorelease appkit

我很难理解在AppKit应用程序中创建和发布自动释放池的确切时间。

例如,如果我有一个覆盖init的ApplicationController类,是否有一个自动释放池在它启动之前被创建并在它结束后被耗尽?

1 个答案:

答案 0 :(得分:1)

AppKit应用程序中的主线程运行NSRunLoop来处理事件。 NSRunLoop每次处理新事件(或计时器)时都会创建一个新的自动释放池,并在控制流返回NSRunLoop后将其耗尽。所以从本质上讲,每次通过运行循环都有一个新的自动释放池。