Комментарии 2
Вполне возможны ситуации, когда в приложении используется несколько сотен потоков.
Какие нахер в iOS приложении сотни потоков?
Сложный инструмент, решающий проблему, которой не должно было быть, приводит к ещё большим проблемам. Напоминает пословицу о регекспах.
Спасибо за статью!
Но поскольку Async/await использует ограниченное количество потоков, их легко занять задачами, которые блокируют поток. Поэтому для задач, блокирующих поток, лучше использовать GCD.
А не наоборот? Если "блокирует поток" в смысле sleep, то как раз async/await этот сценарий лучше обрабатывает.
Или имеются в виду тяжёлые задачки, которые начнут выполняться, и долго не закончатся, не давая выполняться другим? В этом случае ещё может помочь стратегически посыпать код Task.yield().
Async/await в iOS: что нам дает неблокирование потоков