我尝试使用Instruments来分析一个应用程序,以查看该应用程序使用了多少内存以及是否存在一些泄漏问题。
稍微调整了一下之后,我消除了一些泄漏问题,现在没有任何泄漏。然而,我注意到每次推出并弹回一些视图控制器时,内存都会上升,然后略微下降,但不会降至推出之前的水平,例如“Live Bytes”显示:
- 推出之前为1.8 MB - 推出之后为2.1 MB - 弹回之后为2.0 MB - 第二次推出之后为2.1 MB
有趣的是,第二次推出(甚至第10次)后,它不会增加超过先前的值,因此尽管看起来像是泄漏,但它可能是某种缓存或其他东西。我最初认为这是我的代码特定问题,但后来我几乎能够复制任何视图控制器,无论内容多么简单。
这种现象有合理的解释吗?还是我在构建所有示例时都做错了什么?
稍微调整了一下之后,我消除了一些泄漏问题,现在没有任何泄漏。然而,我注意到每次推出并弹回一些视图控制器时,内存都会上升,然后略微下降,但不会降至推出之前的水平,例如“Live Bytes”显示:
- 推出之前为1.8 MB - 推出之后为2.1 MB - 弹回之后为2.0 MB - 第二次推出之后为2.1 MB
有趣的是,第二次推出(甚至第10次)后,它不会增加超过先前的值,因此尽管看起来像是泄漏,但它可能是某种缓存或其他东西。我最初认为这是我的代码特定问题,但后来我几乎能够复制任何视图控制器,无论内容多么简单。
这种现象有合理的解释吗?还是我在构建所有示例时都做错了什么?