Junior — Middle
V ktorých prípadoch sa v programovaní používa slabé odkazovanie?
sobes.tech AI
Odpoveď od AI
Slabé odkazy (weak references) sa používajú, keď je potrebné odkazovať na objekt, ale bez toho, aby to bránilo jeho zberu odpadu. To je užitočné na prevenciu únikov pamäti.
Napríklad v iOS, pri práci s delegátmi, sa často používajú slabé odkazy na zabránenie cyklov udržiavania (retain cycles). Ak objekt A odkazuje na objekt B, a B odkazuje späť na A silnou referenciou, nebudú uvoľnené.
Príklad použitia slabého odkazu v Swift:
class ViewController: UIViewController {
weak var delegate: SomeDelegate?
}
Tu je delegate slabá referencia, takže ak bude delegát odstránený, referencia sa automaticky stane nil, čím sa zabráni únikom pamäti.