asyncAfter с self во ViewController: когда освободится экран?
Задача
Пользователь открыл экран и закрыл его через 3 секунды. Напечатается ли "text"? Когда вызовется deinit?
final class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
DispatchQueue.main.asyncAfter(deadline: .now() + 5) {
self.log("text")
}
}
private func log(_ message: String) { print(message) }
deinit { print("deinit") }
}
Продолжение ответа с кодом и уточняющими вопросами интервьюера — в приложении DevPrep.
Полный ответ — в DevPrep