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