Junior — Middle
În ce cazuri se aplică o referință slabă în programare?
sobes.tech AI
Răspuns de la AI
Слабые ссылки (weak references) применяются, когда нужно ссылаться на объект, но не препятствовать его сборке мусора. Это полезно, чтобы избежать утечек памяти.
Например, в iOS при работе с делегатами часто используют слабые ссылки, чтобы предотвратить циклы удержания (retain cycles). Если объект A ссылается на объект B, а B ссылается обратно на A сильной ссылкой, то они не будут освобождены.
Пример использования слабой ссылки в Swift:
class ViewController: UIViewController {
weak var delegate: SomeDelegate?
}
Здесь delegate — слабая ссылка, поэтому если делегат будет удалён, ссылка автоматически станет nil, предотвращая утечку памяти.