【发布时间】:2010-09-24 10:54:06
【问题描述】:
在 Apple 的 NSObject 文档中,NSZoneFree 在 - (void)dealloc 示例代码中被调用:
- (void)dealloc {
[companion release];
NSZoneFree(private, [self zone])
[super dealloc];
}
您可以在上下文over here 中找到它。
我从来没有想过我应该在我自己的 NSObject 子类(或 NS_WhateverClass_ 子类)中调用 NSZoneFree,并且在文档中的任何地方都找不到关于该主题的任何结论。
关于使用 NSZoneFree,我所能找到的只是在 Memory Management Programming Guide 中的一个简短提及,以及在 Foundation Functions Reference 中对该功能的解释,但这些文档都没有让我清楚我是否应该在dealloc 方法的上下文。
谁能澄清我什么时候应该在我自己的类的 dealloc 实现中调用 NSZoneFree?
编辑:感谢您的回复,我现在更清楚了 :) — Dirk
【问题讨论】:
标签: objective-c cocoa memory