如問題所述,它死於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