tgoop.com/ios_broadcast/2403
Last Update:
Неустаревающая классика, ручное и автоматическое завершение задач в Swift, сколько провожу собесы, столько разработчики валятся на этом вопросе. Если с NSOperations и GCD еще были нюансы, то в Swift Concurrency, мне казалось, все очевидно. База:
Использование модификатора .task
.task
запускается при появлении View и отменяется при его исчезновении.
Повторение работы с модификатором .task(id:)
.task(id:)
запускается при появлении представления и повторяется при изменении идентификатора.
Проверка отмены в кодеtry
или Task.checkCancellation()
.
Долгоживущие задачиDataService
.
Ручная отмена задачtask.cancel()
для ручной отмены.