当我打电话readDataOfLength:
上NSFileHandle
情况下,我需要释放返回NSData
?目前我不是,但我想摆脱这种唠叨的疑问。NSFileHandle -readDataOfLength:return autoreleased NSData?
回答
都能跟得上。可可的memory management rules说,你只有自己(因此需要释放)对象从名称中包含的“新”一个方法返回,“ALLOC”,“保留”,或“复制”(NARC)。由于该方法不包含这些内容,因此您不需要释放它。
是Objective C的库中观察到非常一致的标准是开头的“黄金”或“复制”(和,我想,其他的一些模糊的动词)返回一个保留对象的方法,而一切的回报一个自动释放的对象。
任何异常,应充分证明的规格。
晦涩的词是“新”,这几乎没有人使用(这可能会改变人们采用ARC ......),另外一个,毫不隐晦可言,是'retain'。请注意,仅仅因为方法不返回拥有引用并不意味着它返回一个自动释放对象。 –
如果某个方法没有返回自动释放对象(并且不是所指出的异常之一),那么它必须记录。 (这适用于用户编写的方法以及Objective C库。) –
如上所述,不真实。我想你的意思是说“如果一个方法*返回一个拥有引用*(并且不遵循命名模式),那么它*必须*被记录下来”。那是真实的。一个方法可以返回一个对象而不返回所有权或自动释放该对象。 –
- 1. NSFileManager&NSFileHandle?
- 2. autoreleased池说明
- 3. 与NSFileHandle&NSSocketPort
- 4. NSFileHandle readInBackgroundAndNotify和NSMenu
- 5. NSFileHandle fileHandleForWritingAtPath:return null!
- 6. iOS - 从NSFileHandle或NSPipe创建一个NSURL
- 7. autoreleased没有到位池
- 8. autoreleased没有池警告?
- 9. NSFileHandle offsetInFile如何工作?
- 10. 在Swift 3上使用NSFileHandle
- 11. NSFileHandle fileHandleForReadingFromURL抛出异常
- 12. NSFileHandle readInBackgroundAndNotify不起作用
- 13. nsdata到nsstring到nsdata
- 14. NSData - > UIImage - > NSData
- 15. NSData的NSArray的NSData?
- 16. 从NSData读取整数?
- 17. 转换NSDATA的问题
- 18. NSString componentsSeparatedByString:是否返回autoreleased数组?
- 19. class NSCFData autoreleased没有到位池
- 20. 即使对自己,对象仍然autoreleased
- 21. NSCFString autoreleased没有到位 - 只是泄漏?
- 22. 下载后重组NSData对象
- 23. 如何将CFDataRef转换为NSData?
- 24. 带流式视频或NSFileHandle的AVPlayer
- 25. 如何逐行读取NSFileHandle的数据?
- 26. 用于二进制文件的NSFileHandle?
- 27. 如何用NSFileHandle打开文本文件
- 28. NSTask管道输出到控制台而不是NSFileHandle
- 29. 如何使用NSFileHandle的readabilityHandler检查文件结束?
- 30. 在NSThread崩溃的应用程序与NSFileHandle写文件
NARC,由ARC取代:) – jtbandes
哈哈,那确实... –
感谢。 ** NARC **是一个很棒的助记符。现在我可以在晚上睡觉。 – SSteve