【发布时间】:2011-11-03 21:54:26
【问题描述】:
如果我创建一个带有回调之类的线程..
NSAutoreleasePool* pool = [NSAutoreleasePool alloc] init];
while(1) {
//Process Stuff
}
[pool release];
我假设任何自动释放的东西都不会真正被释放,因为池永远不会被耗尽。 我可以把事情改成这样:
while(1) {
NSAutoreleasePool* pool = [NSAutoreleasePool alloc] init];
//Process Stuff
[pool release];
}
但是如此频繁地分配/删除似乎有点浪费。有没有办法我可以留出一块内存并在池满时释放它?
【问题讨论】:
-
“满”是什么意思?自动释放池的容量没有任何特定限制。
-
我想这就是我好奇的地方。如果有办法限制容量或查询大小。
标签: iphone objective-c memory-management nsautoreleasepool