Sobes.tech
Junior — Middle

Můžeš uvést příklad situace, kdy se slabá reference automaticky nastaví na null?

sobes.tech AI

Odpověď od AI

Slabá reference se automaticky zruší, když je objekt, na který odkazuje, uvolněn z paměti (tedy když na něj již nejsou žádné silné odkazy).

Například v iOS s použitím weak odkazu na delegáta:

class ViewController: UIViewController {
    weak var delegate: SomeDelegate?
}

Pokud je objekt delegáta zničen (například vystoupí z rozsahu a je uvolněn), delegate se automaticky stává nil. To zabraňuje přístupu k již uvolněnému objektu a pomáhá předcházet chybám a únikům paměti.