根据another Stack Overflow post的说法,这条drain信息是苹果公司独有的电话:
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSLog (@"Hello");
[pool drain];
return 0;用release替换drain安全吗?我正在尝试移植一个Objective-C应用程序,以便在Linux (目前是Ubuntu)上运行。我还没开始就应该放弃吗?(我已经在尝试让NSURLConnection正常工作时遇到了问题)
发布于 2009-09-27 12:50:07
来自苹果的drain文档:
...此方法的行为与release相同。..。
因此,排出自动释放池意味着不可避免地要释放它。在我看来,苹果应该弃用drain,因为它只会造成混乱。
但是:
特别注意事项:
在垃圾收集环境中,release是无操作的,所以除非您不想给收集器一个提示,否则在可能为垃圾收集环境编译的任何代码中使用drain都很重要。
https://stackoverflow.com/questions/1483368
复制相似问题