Sobes.tech
Junior — Middle
88

Можешь привести пример ситуации, когда слабая ссылка автоматически обнуляется?

Сұралған компаниялар
Альфа-БанкАльфа-Банк

AI-дан жауап

sobes.tech AI

Слабая ссылка автоматически обнуляется, когда объект, на который она ссылается, освобождается из памяти (то есть когда на него больше нет сильных ссылок).

Например, в iOS с использованием weak ссылки на делегата:

class ViewController: UIViewController {
    weak var delegate: SomeDelegate?
}

Если объект делегата уничтожается (например, выходит из области видимости и освобождается), то delegate автоматически становится nil. Это предотвращает обращение к уже освобождённому объекту и помогает избежать ошибок и утечек памяти.