iOS Такой 🍏
3.39K subscribers
424 photos
10 videos
2 files
303 links
IT | Подкасты | Apple | iOS Материалы | Swift

Реклама: @new_repository

Тёплый чат: https://t.me/+tzWmsOMTPpFjMzAy

Бусти: boosty.to/dimov_ios
Download Telegram
Async/await против GCD

Task в Swift — это новая асинхронная конструкция, которая была добавлена в Swift 5.5. Task — это единица асинхронной работы. Когда вы создаете экземпляр Task, вы предоставляете замыкание содержащее какую-то работу, которую эта задача должна выполнить. Только код, выполняющийся как часть задачи, может взаимодействовать с этой задачей, а вот чтобы взаимодействовать с текущей задачей, вы вызываете один из статических методов Task. Кроме того, Task также предоставляет дополнительные возможности, такие как отмена задачи, проверка статуса выполнения и управление приоритетом выполнения.

Каждая задача в группе задач имеет одну и ту же родительскую задачу, и у каждой задачи могут быть дочерние задачи. Из-за явных отношений между задачами и группами задач такой подход называется структурированным параллелизмом

Основываясь на вышеприведенном статье, в которой приведены множество примеров реализации GCD и Async/await и их различия, можно с уверенностью заявить, что использование async/await сильно упрощает разработку, а также делает код более простым и читаемым, что видно невооруженным глазом и несомненно оказывает самый благоприятный эффект на долгосрочную судьбу проекта.

#digest #asyncawait #gcd
👍105💩2🔥1