内存泄漏问题

时间:2016-11-23 12:33:00

标签: ios swift memory-management memory-leaks

我正在研究Xcode8和Swift3。在运行应用程序时,我正在使用可视内存调试。它向我显示了左侧的3个内存问题。请让我知道如何解决这些内存问题? enter image description here

1 个答案:

答案 0 :(得分:0)

嗯,很难告诉你如何在不知道程序流程的情况下解决这些问题。此外,内存问题有很多原因,这实际上取决于您处理对象实例的方式。

如果您不使用ARC,则表示您负责释放您创建的任何对象。然后你必须检查该对象泄漏到哪个阶段。正如它在那里所说,它是一个被泄露的词典。因此,您可以了解要检查的具体对象。

另一方面,如果您使用ARC,那么您不必处理释放您创建的对象。但是,这并不意味着你不会得到任何泄漏。这些是可能导致程序内存泄漏的可能原因,即使使用ARC:

  • 您可以在子对象中设置对父级的强引用。这会导致保留周期。
  • 您在界面中设置了对委托的强引用。
  • 在转让所有权后进行免费桥接时,您忘记释放对象。
  • 您忘记为在块中传递的对象设置弱引用。

我希望这会有所帮助