يمكن أن يؤدي NSNotificationCenter إلى أخطاء.هل تعرف المزيد من الحلول الأنيقة؟
-
27-10-2019 - |
سؤال
يمكنني إضافة مراقب مرتين (عن طريق الصدفة) إلى مركز الإشعارات وسأتلقى إشعارات مرتين. هل من الممكن الحصول على إشعار واحد فقط؟هل تعرف المزيد من الحلول الأنيقة؟
أريكم هذا المثال لأن هذا قد يؤدي إلى أخطاء. Genacodicetagpre
المحلول
إذا لم تكن متأكدًا مما إذا كنت قد أضفت المراقب في مكان آخر ، فيمكنك استخدام الكود التالي في كل مرة تضيف فيها مراقبًا Genacodicetagpre
بهذه الطريقة تقوم بإزالة القديم (إن وجد) وإضافة واحدة جديدة.
إنه ليس دليلًا على الفشل بنسبة 100٪ ولكنه بداية.قد يفشل هذا في التطبيقات متعددة الخيوط حيث يتم إجراء المكالمات غير متزامنة أو مواقف فريدة أخرى.
نصائح أخرى
يمكنك أيضًا تعيين كائن على صفر ثم استخدامه لاحقًا كما لو كان لا يزال صالحًا.
لا يمكن جعل كل شيء آمنًا.
لا تنتمي إلى StackOverflow