База Hintsage

ARC и память

ARC, reference cycles, weak/unowned и время жизни объектов.

Практика

Вопросы: ARC и память

При создании callback объект уже существует, но позже переменная service переназначается. К какому объекту обратится callback?

final class Service {
    let id: String
    init(_ id: String) { self.id = id }
    deinit { print("deinit \(id)") }
}

var service: Service? = Service("A")
let callback: () -> Void = { [weak service] in
    print(service?.id ?? "nil")
}

service = Service("B")
callback()

Показано 4150 из 50