Considérons un scénario lorsqu'un objet s'inscrit dans le centre de notification (supposons ios 8) afin que le centre crée une référence forte à l'objet. Puisque < = le centre ios8 fait une référence forte à l'objet, donc le nombre de coups augmente jusqu'à un. Maintenant, Apple doc dit que nous devons supprimer l'observateur dans dealloc() pour éviter les crashs. Je n'ai pas obtenu deux choses ici:Comment la méthode dealloc est appelée si un objet est un observateur et enregistré au centre de notification?
- Comment la méthode dealloc() sera appelée si le centre la retient toujours? Ma compréhension est à moins que le nombre de retenue soit nul dealloc() ne sera pas appelé sur cet objet.
- Supposons que dealloc se produise et que nous n'avons pas supprimé l'observateur. Puisque l'objet est déjà désalloué, pourquoi est-ce qu'il plante?