Sobes.tech
Junior — Middle

Aký je najmenší počet objektov potrebných na vytvorenie cyklu udržiavania v pamäti?

sobes.tech AI

Odpoveď od AI

Minimálny počet objektov potrebných na vytvorenie cyklu udržiavania (retain cycle) v pamäti je dva. To sa stáva, keď si dva objekty navzájom držia silné odkazy, čo bráni systému správy pamäti ich uvoľniť, aj keď už nie sú potrebné.

Príklad v Swift:

class A {
    var b: B?
}

class B {
    var a: A?
}

let objectA = A()
let objectB = B()

objectA.b = objectB
objectB.a = objectA

V tomto príklade si objectA a objectB navzájom držia, čím vzniká cyklus udržiavania.