Как задержать выход инструмента командной строки Mac до запуска фоновой задачи? - PullRequest
0 голосов
/ 05 сентября 2018

Я создаю инструмент командной строки Mac в XCode 9.4, используя Swift 4.2.

Я должен сохранить некоторые данные для будущего использования в фоновом потоке, используя GCD, как показано ниже.

let background = DispatchQueue.global(qos: .background)
background.async { [unowned self] in
    self.saveData(of: self.user, to: "user details")
}

Это хорошо работает и сохраняет пользовательские данные, когда приложение работает некоторое время после запуска фонового потока. Но иногда пользователь может выйти из приложения во время процесса фонового сохранения. Как заставить инструмент завершить процесс сохранения и затем выйти?

...