0

Heapshots 显示对象没有被释放,同时日志显示 dealloc 被调用。我确实释放了所有属性并删除了 dealloc 中的所有超级视图。那么为什么内存仍然没有释放呢?

4

2 回答 2

1

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

于 2012-12-06T21:20:37.353 回答
1

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

  1. 你没有[super dealloc]在你的末尾调用-dealloc(仅适用于非 ARC 代码)
  2. 您启用了僵尸。这可以通过 Instruments 中的复选框(在 ObjectAlloc 工具的配置中)或通过 Scheme 编辑器中的 Diagnostics 选项卡来完成。
于 2012-12-06T21:20:51.347 回答