كيفية الرد على didreceivememorywarning في opengl التطبيق
-
13-09-2019 - |
سؤال
تطبيقي يستخدم الكثير من الذاكرة. عادة ما يتم تشغيله بشكل جيد، ولكن على جهاز محمل لم يتم إعادة تشغيله في لحظة، سيتم التخلي عن خطأ منخفض الذاكرة السمعة.
أود أن أرد didReceiveMemoryWarning
وتحرير بعض مخابئ بلدي.
ولكن لدي مشكلة أن تطبيقي يعتمد على قالب OpenGL ES وليس لديه وحدة تحكم عرض. إنه لديه مندوب التطبيق الذي يحمل إشارة إلى GLVIEW.
ماذا يمكنني أن أفعله لفخ didReceiveMemoryWarning
رسالة حتى أتمكن من الاستجابة؟
المحلول
هذا هو متاح أيضا داخل الخاص بك مندوب التطبيق.
-(void)applicationDidReceiveMemoryWarning:(UIApplication *)application
{
NSLog(@"Received memory warning!");
}
نصائح أخرى
يمكنك أيضا إضافة طريقة كمراقب، في أي فصل تريده، إلى UIApplicationDidReceiveMemoryWarningNotification
تنبيه. قد يعجبك القانون مثل هذا:
- (void) cleanMemory: (NSNotification*) notification {
// Save memory!
}
- (id) init { // Or any other function called early on.
// other init code
[[NSNotificationCenter defaultCenter]
addObserver:self selector:@selector(cleanMemory:)
name:UIApplicationDidReceiveMemoryWarningNotification
object:nil];
return self;
}
لا تنتمي إلى StackOverflow