Junior — Middle
Kako otkazati zadatak koji je u redu pre njegovog pokretanja?
sobes.tech АИ
Одговор од АИ
Na iOS, za otkazivanje zadatka koji se nalazi u redu, ali još nije pokrenut, možete pozvati metodu cancel() na objektu zadatka (npr., Operation ili URLSessionTask). Ako zadatak još nije započeo, biće otkazan i neće biti pokrenut.
Primer sa OperationQueue:
let operationQueue = OperationQueue()
let operation = BlockOperation {
print("Izvršavanje zadatka")
}
operationQueue.addOperation(operation)
// Otkaži zadatak pre njegovog pokretanja
operation.cancel()
Ako je zadatak već u toku, otkazivanje možda neće odmah zaustaviti, pa je važno unutar zadatka proveriti zastavicu isCancelled i pravilno ga završiti.