Sobes.tech
Junior — Middle

Kedy sa uvoľňuje pamäť obsadená objektom?

sobes.tech AI

Odpoveď od AI

V iOS, uvoľnenie pamäte objektu nastáva v okamihu, keď sa čítač odkazov (retain count) tohto objektu dostane na nulu. To znamená, že na objekt už nikto ne odkazuje, a systém môže uvoľniť jeho obsadenú pamäť.

V moderných aplikáciách sa používa ARC (Automatic Reference Counting), ktorý automaticky zvyšuje a znižuje čítač odkazov pri priraďovaní a odstraňovaní odkazov na objekt.

Príklad:

class MyClass {}

var obj: MyClass? = MyClass() // čítač odkazov = 1
obj = nil // čítač odkazov = 0, objekt je uvoľnený

Takto dochádza k uvoľneniu pamäte ihneď po tom, čo posledný vlastník objektu prestane na neho odkazovať.