ios - 我的 cocos2d 应用程序每秒增加实际内存使用量是否正常?

标签 ios xcode memory-management memory-leaks cocos2d-iphone

我为 iPad 开发 cocos2d iOS 应用程序。 当我测试内存泄漏和对象分配时,我的 Live Bytes 是稳定的, 但是当我运行 Activity Monitor 时,我发现我的应用程序的实际内存使用量每秒增加 0.02MB。

请问是否正常,有没有人遇到过类似的问题?

最佳答案

这完全有道理,因为 Cocos2d(至少 0.9.x 和 1.0 分支)倾向于自动释放所有内容。当您在屏幕上循环生成大量 sprite 时,这可能会导致内存堆积。如果你确实是自动释放而不是泄漏,那么添加一个自动释放池和你的循环可能是一个快速修复。也就是说,您实际上可能在泄漏。

要调试内存泄漏,我会从 Leaks Instrument 开始,也许还有 Allocations instrument。在 Xcode 中,点击 Command + I,或 Product -> Profile

Xcode build menu

打开分析器后,您会看到一个菜单,其中包含一堆调试工具:

Instruments selection menu

选择泄漏后,您会看到这个方便的窗口,其中包含各种有用的信息:

enter image description here

在顶部,您将以图表形式看到内存分配和泄漏。在底部,您可以看到各种有用的信息,例如分配了哪些对象、使用了多少内存等等。

有关使用仪器进行 Xcode 调试的完整处理,请查看 this handy Apple Developer video (login required) .

关于ios - 我的 cocos2d 应用程序每秒增加实际内存使用量是否正常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13231570/

相关文章:

ios - MVC 中的智能行为(不是计算数据)? iOS

iPhone 缓存问题

ios - UIView Shadow 使用 BezierPath 大量偏移阴影

xcode - 缺少自动完成和文档

ios - 使用 Swift 3 和 Alamofire 4 后没有得到响应

iphone - 正确处理didReceiveMemoryWarning

c++ - 避免 Eigen 的内存分配

IOS - 触摸 UIPickerView 时关闭键盘

objective-c - 向 XCode 4 添加框架

linux - 如何降低页面分配失败的概率?