neb*_*ebs 0 iphone memory-management objective-c retain
如果在释放之前dealloc方法中对象的保留(引用)计数大于1,这是否意味着内存泄漏?
我正在调试我的代码以找到另一个问题,但后来遇到了这个微妙的问题.在dealloc方法中,我的一个对象的保留计数是3.此对象是具有retain的属性,仅在类中调用.现在我想在dealloc方法中所有对象的保留计数应该是1,然后才能正确释放?
这是自定义类中的dealloc方法示例:
- (void)dealloc {
// Prints: "myObject retaincount: 3"
NSLog(@"myObject retaincount: %d", [myObject retainCount]);
// myObject retain count will be 2 after this call
[myObject release];
[super dealloc];
}
Run Code Online (Sandbox Code Playgroud)
这是正常的吗?
小智 6
来自Apple关于-retainCount:
重要说明:此方法在调试内存管理问题时通常没有价值.因为任何数量的框架对象可能保留了一个对象以保存对它的引用,而同时自动释放池可能在对象上保留任意数量的延迟版本,所以您不太可能从此获取有用信息方法.
| 归档时间: |
|
| 查看次数: |
999 次 |
| 最近记录: |