迅速无限的记忆增长

时间:2016-04-28 21:07:56

标签: ios swift

我使用SpriteKit&amp ;;在XCode7.3中制作了一个Swift 2.2应用程序。 GameCentre。

我的问题是应用程序使用的内存持续增长(每秒钟大约会抓取20MB左右)。最终这会导致应用程序因内存问题而崩溃。我在设备上运行类似的结果(iPhone 6s)&模拟器。

我已经通过仪器运行它(下面的屏幕截图),这似乎显示了这个问题。

Instruments screenshot

从挖掘到仪器输出,似乎显示460 KiB malloc调用发生内存泄漏。我还没有设法从堆栈跟踪中找出导致这种情况的原因。

仪器输出可用 - 不确定如何在此处附加。有关从哪里开始的任何建议/指示?

2 个答案:

答案 0 :(得分:0)

尝试二进制搜索您的代码。评论一半的电话。仍然有内存泄漏?好的,现在您已将搜索范围缩小了一半。评论其余部分的一半。没有内存泄漏?太棒了,你只是把你的问题缩小到你的代码的四分之一。一旦开始获得导致泄漏的特定代码,您将从StackOverflow中获得更多有用的答案。

答案 1 :(得分:0)

已找到答案 - 原因是Apple / Spritekit代码中存在错误。

作为设置场景的一部分,我将SKView的showFields设置为true。一旦我禁用它(错误),内存泄漏问题就会消失。

从搜索中我发现 - https://forums.developer.apple.com/thread/27870