Какое минимальное количество объектов необходимо для возникновения цикла ссылок?

Минимальное количество объектов для возникновения цикла сильных ссылок — два.

Короткий ответ

Что ответить на собеседовании

Минимальное количество объектов для возникновения цикла сильных ссылок — два.

Подробный разбор

Ответ с пояснениями

Минимальное количество объектов для возникновения цикла сильных ссылок — два.

Цикл ссылок возникает, когда два объекта имеют сильные ссылки друг на друга, из-за чего система подсчёта ссылок (ARC в iOS) не может освободить память, так как каждый объект удерживает другой.

Пример:

class A {
    var b: B?
}

class B {
    var a: A?
}

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

objectA.b = objectB
objectB.a = objectA

Здесь objectA и objectB ссылаются друг на друга, создавая цикл, который приведёт к утечке памяти, если не использовать слабые (weak) или неразделяемые (unowned) ссылки.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее