سؤال

هل فون جمع الدعم القمامة؟ إذا كان الأمر كذلك، فما هي الطرق البديلة لتنفيذ العمليات التي يتم performaed باستخدام +alloc و-init الجمع:

NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:xmlData];
UIImage *originalImage = [[UIImage alloc] initWithData:data];
detailViewController = [[[DetailViewController alloc] initWithNibName:@"DetailView bundle:[NSBundle mainBundle]] autorelease];

... وغيرها من الأوامر. شكرا لكم مقدما على أي مساعدة أو الاتجاه الذي يمكن أن تقدم.

هل كانت مفيدة؟

المحلول

ولا. جمع القمامة كبير جدا من النفقات العامة لعمر البطارية محدود الخ على الجهاز.

ويجب أن البرنامج دائما مع نمط alloc/release في الاعتبار.

NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:xmlData];
...
[xmlParser release];

وأو (وليس مناسبة لكل حالة)

NSXMLParser *xmlParser [[[NSXMLParser alloc] initWithData:xmlData] autorelease];

وآمل أن يساعد هذا!

نصائح أخرى

لا، لا يتم اعتماد جمع القمامة على اي فون حاليا. تحتاج إلى استخدام alloc / release / autorelease.

لاحظ عدم وجود جمع القمامة يعني غير معتمدة إشارات ضعيفة أيضا.

ومونو مسة له جمع القمامة ويعمل على نظام التشغيل اي فون.

في يقول مناقشة لا أحد كامل عن لغة جافا، جافا جمع القمامة هو في بني في اللغة بحيث يكون متاحا ضمنا في الروبوت، J2ME وبلاك بيري :)، حيث كما هو الحال في الهدف-C هو اختياري، حتى في اي فون GC غير متوفر.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top