Junior — Middle
Кое е най-малкото число обекти, необходимо за създаване на цикъл на задържане в паметта?
sobes.tech AI
Отговор от AI
Минималният брой обекти, необходими за образуване на цикъл на задържане (retain cycle) в паметта, е два. Това се случва, когато два обекта държат един друг чрез силни препратки, което пречи на системата за управление на паметта да ги освободи, дори ако вече не са необходими.
Пример на Swift:
class A {
var b: B?
}
class B {
var a: A?
}
let objectA = A()
let objectB = B()
objectA.b = objectB
objectB.a = objectA
В този пример objectA и objectB държат един друг, създавайки цикъл на задържане.