يمكن أن يؤدي NSNotificationCenter إلى أخطاء.هل تعرف المزيد من الحلول الأنيقة؟

StackOverflow https://stackoverflow.com/questions/9331675

  •  27-10-2019
  •  | 
  •  

سؤال

يمكنني إضافة مراقب مرتين (عن طريق الصدفة) إلى مركز الإشعارات وسأتلقى إشعارات مرتين. هل من الممكن الحصول على إشعار واحد فقط؟هل تعرف المزيد من الحلول الأنيقة؟

أريكم هذا المثال لأن هذا قد يؤدي إلى أخطاء. Genacodicetagpre

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

المحلول

إذا لم تكن متأكدًا مما إذا كنت قد أضفت المراقب في مكان آخر ، فيمكنك استخدام الكود التالي في كل مرة تضيف فيها مراقبًا Genacodicetagpre

بهذه الطريقة تقوم بإزالة القديم (إن وجد) وإضافة واحدة جديدة.

إنه ليس دليلًا على الفشل بنسبة 100٪ ولكنه بداية.قد يفشل هذا في التطبيقات متعددة الخيوط حيث يتم إجراء المكالمات غير متزامنة أو مواقف فريدة أخرى.

نصائح أخرى

يمكنك أيضًا تعيين كائن على صفر ثم استخدامه لاحقًا كما لو كان لا يزال صالحًا.

لا يمكن جعل كل شيء آمنًا.

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