如问题所述,它死于7MB ..(iphone)当仪器显示“所有分配”只有7mb时,我的应用程序会收到内存警告?
这是正常的吗? (7MB ..)
仪器显示无泄漏。
谢谢
- 编辑
编辑17MB - > 7MB。 我通过取出我分配的不必要池来降低内存使用量。
不过,它会在7 MB时获得内存警告。 我基本上是在创建图像并在获取警告时不断发布它们。
我做了很多的
- (UIImage*) allocImage
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
UIImage* uiImage = [UIImage imageWithData: imageData];
UIImage* changedImage = [uiImage changeColor: self.currentColor];
uiImage = changedImage;
[uiImage retain];
[pool release];
return uiImage;
}
并释放我的UIImage的(仪器显示内存2-3 MB上升,可以追溯到7MB)
每个图像为1MB大在内存上,我应该在应用程序获得警告的时候创建/销毁大约100次的图像。
- 编辑2
发现了类似的情况下,没有办法有,但..
My iphone app gets memory warning and killed at 6.8MB
Memory Warning but Small Live Bytes
也许我应该将 “创造的UIImage”,以C/C++代码?这样我不必担心加载许多图像?不知道这是可能的。
或者可能为图像使用内存池,因为图像大小完全相同。
为了记录,_mg_是毫克,质量单位的缩写。 =) – 2011-01-10 16:04:38
哈哈感谢Bavarious – eugene 2011-01-10 16:11:43