Sobes.tech
Junior — Middle

Comment l'utilisation de références faibles influence-t-elle la gestion du cycle de vie des objets en mémoire?

sobes.tech IA

Réponse de l'IA

Les références faibles (weak references) en iOS (et en gestion de mémoire en général) permettent de faire référence à un objet sans empêcher sa suppression par le ramasse-miettes ou le système ARC (Automatic Reference Counting). Si un objet n’est accessible que via des références faibles, il peut être libéré de la mémoire.

Cela aide à éviter les dépendances cycliques et les fuites de mémoire, car une référence faible n’augmente pas le compteur de références de l’objet.

Exemple en Swift :

class Person {
    var name: String
    weak var delegate: SomeDelegate?
    init(name: String) {
        self.name = name
    }
}

Ici, delegate est une référence faible pour éviter de retenir l’objet et de créer d’éventuels cycles.