dealloc后不释放对象

时间:2012-12-06 21:19:22

标签: objective-c ios memory

快照显示对象未被释放,同时日志显示已调用dealloc。我确实发布所有属性并删除dealloc中的所有超级视图。那么为什么还没有发布内存?

2 个答案:

答案 0 :(得分:1)

您(假设您没有使用ARC)在dealloc方法结束时调用[super dealloc]吗?

答案 1 :(得分:1)

如果调用了dealloc,但是没有释放支持该对象的内存,则有两种可能:

  1. 您未在[super dealloc]结束时致电-dealloc(仅适用于非ARC代码)
  2. 您启用了Zombies。这可以通过Instruments中的复选框(在ObjectAlloc仪器的配置中)或通过Scheme编辑器中的Diagnostics选项卡完成。