Я думаю, что это должно работать для ваших целей (написано в Swift ):
// Go to an asynchronous thread
// .userInitiated quality of service for a high-priority task
DispatchQueue.global(qos: .userInitiated).async { [weak self] in
// Make sure you have a reference to self if you need it here
guard let self = self else {
return
}
// Make your asynchronous web service call here
// Now return to the main thread
DispatchQueue.main.async { [weak self] in
// Make sure you have a reference to self if you need it here
guard let self = self else {
return
}
// Update your UI here
}
}
Подробнее о DispatchQueue
и различных качествах обслуживания, я рекомендую это учебник .