【发布时间】:2010-10-29 14:42:24
【问题描述】:
好的……
我正在 iPhone 上实现一个简单的 OpenGL ES 应用程序,并且我最近添加了 Pinch Media Analytics。这样做有助于发现内存管理问题,但我不完全确定如何处理它。
在一个完美的世界中,我的应用程序 - 在 didFinishLoading 中加载 PNG 和 .CAF 文件将启动,加载它的所有资源,并且运行良好。
但是,如果我的程序崩溃(在我集成 Pinch Media 库时发生)或者如果我运行 Safari 并打开一堆页面然后启动我的游戏,游戏将崩溃回到菜单,因为它内存不足。
在我对系统进行硬重置之前,此问题将一直存在。
您上网的默认答案是实现如下所列的 didReceiveMemoryWarning 方法....
- (void)didReceiveMemoryWarning
{
// default behavior is to release the view if it doesn't have a superview.
// remember to clean up anything outside of this view's scope, such as
// data cached in the class instance and other global data.
[super didReceiveMemoryWarning];
}
但这并没有真正的帮助,因为是其他程序占用了内存,而不是我的。我不想发表我自己的观点是吗?是否有关于如何处理这种情况和/或在 didReceiveMemoryWarning 事件中发生什么的详细说明?
【问题讨论】: