xcode工具在自动截取屏幕时使用大量内存

时间:2015-08-20 08:49:29

标签: instruments ios-ui-automation xcode-instruments

我们使用仪器自动化工具来测试我们的ios应用程序。 (我们使用xcode 6.4。) 测试包括拍摄许多截图,然后由imagemagick检查。 我看到的问题是仪器应用程序本身的内存使用量随着时间的推移而增长。它执行得越来越慢,最后几乎挂起。活动监视器显示仪器进程的10 GB使用情况。物理内存为8 GB。

我还注意到,当我取消选中“Continuously Log Results”选项时,内存不会增长。但我需要这个选项,因为我想访问截图文件。我不明白为什么把截图写入磁盘消耗所有内存。

我做了一个简单的测试来重现这个问题:

var target = UIATarget.localTarget();

for (var i=0; i<100; i++)
    target.captureScreenWithName("scr" + i);

UIALogger.logMessage("done");

如果选中“连续记录结果”,则每次运行都会增加数百兆字节到仪器进程内存使用量(我认为这取决于设备的屏幕分辨率)。即使我关闭当前运行的窗口,也不会释放此内存。只有当我完全退出乐器进程时,才会释放内存。

任何可能出错的想法都将受到赞赏。对我来说,仪器中的内存泄漏似乎就像。

0 个答案:

没有答案
相关问题