|
|
1
5
当“自动释放池过期”时。 这通常意味着堆栈何时展开。 所以这样想吧-你的应用程序是事件驱动的。将事件发送到它,并通过一系列函数对其进行处理。当每个函数都返回,并且事件已完成处理时,将调用autorelease。 这意味着当你自动释放一个对象时,你可以指望它还活着,并将它从一个函数返回给它的调用方。在处理任何类型的后续事件时,或者在现有堆栈帧外部调用时,永远不要期望它出现。 |
|
|
2
1
Cocoa应用程序中的每个线程都维护自己的NSAutoreleasePool对象堆栈。当线程终止时,它会自动释放与自身关联的所有自动释放池。 |