我正在为我的一个应用程序运行一些内存测试,当我遇到一个我从未见过泄漏的视图控制器上的巨大泄漏时,我感到非常惊讶。分析器没有将其标记为泄漏,但每次打开和关闭特定视图控制器时内存都会继续增长。
看来控制器本身正在发布,但视图仍然存在。
一般来说,我会在我的代码中考虑这个问题,但我已经在iOS 10.3和11.1中运行了应用程序的测试,并且其中任何一个都没有发生内存泄漏,而且我没有任何代码路径应该对那些iOS版本执行不同的操作。
我花了几个小时查看我们的代码,并且没有看到任何我认为应该导致泄漏的内容。我开始认为iOS 11.2中存在错误,或者可能是分析器中的错误。
所以,为了解决我的问题,iOS 11.2或分析器中是否存在任何人都知道可能导致此问题的错误?
编辑:
我在我正在测试的iPad上运行了一个应用程序,以验证内存使用量是否继续增长,并且随着分析器的显示而增长。因此,我现在相当确信这是由于某个错误或iOS本身的故意更改。
编辑2:
这是一个文本字段的示例,它不应该存在于内存中。我没有看到任何直接链接回到我应该把它留在记忆中的任何东西。 我可以在11.1上运行同样的东西,并且视图正确清理。