代码之家  ›  专栏  ›  技术社区  ›  Rocky Pulley

捕获解除锁定(释放)错误

  •  0
  • Rocky Pulley  · 技术社区  · 11 年前

    我在开发的一个应用程序中遇到了一些问题,有时如果我在动画进行时终止,它最终不会调用动画api内部的发布方法。

    如果为了安全起见,我在最后做了[obj release],那么如果代码工作正常并释放了对象,最终会引发内部错误。

    所以,我的问题是,有没有办法忽略这些调用release的错误,然后继续到下一行?

    1 回复  |  直到 11 年前
        1
  •  3
  •   Seamus Campbell    11 年前

    没有办法安全地忽略这些错误。

    理解对象保留和释放语义是编写无缺陷Objective-C代码的最重要部分之一。如果你启用自动引用计数(ARC),你会省去很多麻烦,但事实是,如果不了解这些东西是如何工作的,你就不可能成为一个认真的Objective-C程序员。

    至于特定的错误,我建议您提供一些块的代码片段,以及如何取消动画,这样我们就可以指出如何正确平衡您的发布调用。