根据 另一个堆栈溢出帖子drain 消息是仅苹果的电话:

NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSLog (@"Hello");
[pool drain];
return 0;

更换安全吗 drainrelease?我正在尝试将Objective-C应用程序移植到Linux上(目前Ubuntu)。我应该在开始之前放弃吗? (我已经遇到了试图得到的问题 NSURLConnection 在职的)

有帮助吗?

解决方案

从苹果的文档 drain:

...]此方法的行为与发布相同。 [...

因此,排出自动释放池意味着不可避免地对其进行处理。我认为,苹果应该贬低 drain 因为它只会引起混乱。

但:

特殊注意事项:
在垃圾收集的环境中 release是一个毫无疑问,所以除非您不想给收藏家一个提示,否则使用 drain 在可能为垃圾收集的环境中编译的任何代码中。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top