Я отправлял уведомления в NSNotficiationCenter
каждый раз, когда мне нужно было выйти из закрытия, чтобы обновить интерфейс, но это начало немного утомительно и заставило меня задуматься, есть ли лучший способ. После быстрого поиска я обнаружил, что вы можете просто послать в главную очередь, как это:Лучший/самый распространенный способ обновления интерфейса от фоновой темы
dispatch_async(dispatch_get_main_queue()) {
// update some UI
}
Этот подход меньше кода наверняка, но мне интересно, если это улучшает читаемость. Итак, мой вопрос: что такое «путь» в Swift для обновления пользовательского интерфейса из фонового потока?
Я не думаю, что есть «один путь» с этим (по крайней мере апи мудрой), но то, что вы показываете здесь довольно часто. Есть несколько помощников с открытым исходным кодом, которые завершают вызовы gcd и добавляют синтаксический сахар. [Вот один из них] (https://github.com/duemunk/Async) – Alladinian
Это ПУСТЬ дешевле, чем уведомления, и многое другое ясно – PeejWeej