我刚刚正在分析我正在使用Instruments开发的ipad应用程序。特别是我对内存使用感兴趣,因为我收到了一些内存警告。
首先,活动监视器报告在启动应用程序后总共使用了大约40MB的内存。这对我来说真的很重要。特别是在创业之后,没有什么比这更好的了。
所以我一直在分析VM跟踪器中的应用程序。
首先,有人可以解释如何解释脏内存吗?我的意思是ipad并没有真正的虚拟内存,因为没有交换等等。
好的,真的很奇怪的是我有大约40 MB的脏内存,这是常驻的! IOKit下列出了大约38MB。在IOKit下,没有进一步的信息,这实际上意味着什么。
那么IOKit究竟做了什么? 什么可能导致这种疯狂的巨大价值?
任何形式的提示都表示赞赏! :)
答案 0 :(得分:1)
尝试快照分析,bbum有一个很棒的tutorial here。
基本上你采用一个快照,运行一些程序,再进行几次迭代的另一个快照。这将有助于找到丢失但没有泄漏的内存。我经常使用这种方法,
我多次使用Heapshot非常有利,非常感谢bum。
答案 1 :(得分:0)
什么是脏内存?
根据此session。
VM配置文件显示脏内存的一些信息
像脏内存大小。他们是匿名的。
vmmap --summary App.memgraph
在此会话中,这位Apple开发人员使用heap
获取有关对象大小的更多信息。
heap App.memgraph