func dismiss(animated flag: Bool,
completion: (() -> Void)? = nil)
navigationController?.popViewController(animated: true/false)
viewWillDisappear()
и viewDidDisappear()
это методы жизненного цикла вью контроллера, эти методы вызываются самим фреймворком UIKit, вручную, обычно, они не вызываются. Вызываются фрейморкомом они тогда, когда вью контроллера собирается исчезнуть и когда оно исчезло соответственно, только после этого контроллер будет удален из памяти.