سؤال

i init my nsxmlparser مع بيانات قابلة للتغيير، التي أحصل عليها من الإنترنت. أتساءل عما إذا كان المحلل تحلل يطلقه ذلك على طريقه أو لا بد لي من إطلاق سراحه بعد التحليل؟

شكرًا

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

المحلول

يستخدم Cocoa استعارة "ليست مشكلتي" لإدارة الذاكرة.

إذا قمت بنزول شيء إلى كائن آخر، فمن المساهاة بالمسؤولية بالاحتفاظ بها.

إذا تم تمرير شيء ما إلى إحدى الأشياء الخاصة بك، فأنت بحاجة إلى الاحتفاظ به أو قد يذهب بعيدا.

عموما تمرير الأشياء مثل:

    [otherObject doSomethingWith:[myThing autorelease]];

أو

    [otherObject doSomethingWith:myThing];
    [myThing release];

تعمل أطر الكاكاو على هذا المبدأ ويجب عليك تصميم فصولك بنفس الطريقة.

نصائح أخرى

إذا كنت قد احتفظت بذلك، فلن تستخدمها، ثم حررها. من المرجح أن يحتفظ NSXMLParser بالبيانات نفسها وإصدارها عند الانتهاء منه.

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