Назад к вопросам
Okko
Junior — Middle
65
Каким образом можно отменить выполнение задачи, запланированной в GCD?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
В GCD (Grand Central Dispatch) отменить выполнение задачи можно, если использовать DispatchWorkItem. Создавая задачу через DispatchWorkItem, можно вызвать метод cancel() до её выполнения.
Пример:
let workItem = DispatchWorkItem {
print("Выполнение задачи")
}
DispatchQueue.global().async(execute: workItem)
// Отмена задачи
workItem.cancel()
Важно: отмена не прерывает уже начавшуюся задачу, а лишь помечает её как отменённую. Внутри кода задачи можно проверять свойство isCancelled и корректно завершать выполнение.