Sobes.tech
Junior — Middle

Kaip galite nutraukti arba atšaukti asinchroninės korutinos vykdymą jūsų programoje?

sobes.tech AI

Atsakymas iš AI

Kotlin'e, asinhron korutina'yı kesmek veya iptal etmek için Job aracılığıyla iptal mekanizması kullanılır. Korutina'yı iptal etmek için, ilgili Job'da cancel() metodunu çağırmak gerekir.

Örnek:

val job = CoroutineScope(Dispatchers.Default).launch {
    repeat(1000) { i ->
        println("Çalışıyorum $i ...")
        delay(500)
    }
}

// Daha sonra, yürütmeyi iptal etmek:
job.cancel()

Önemli olan, korutina içinde iptal noktalarının bulunmasıdır — örneğin, delay() gibi suspend fonksiyonlarının çağrıları, iptal durumunu kontrol eder ve korutinanın düzgün şekilde sona ermesine olanak tanır.