Вопрос проверяет базовое понимание способов выполнения задач в GCD и умение объяснить влияние на поток выполнения.
Короткий ответ
sync выполняет задачу синхронно и блокирует текущий поток до её завершения.async добавляет задачу в очередь и сразу возвращает управление, не блокируя поток.
При sync код выполняется последовательно, при async — параллельно или позже.
Неправильное использование sync может привести к зависаниям приложения.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.