Sobes.tech
Junior — Middle

Hogyan lehet megszakítani vagy törölni az alkalmazásodban az aszinkron coroutine végrehajtását?

sobes.tech MI

Válasz az MI-től

Kotlinban az aszinkron coroutine megszakításához vagy törléséhez a Job révén történő törlési mechanizmust használják. A coroutine törléséhez a megfelelő Job-onál a cancel() metódust kell meghívni.

Példa:

val job = CoroutineScope(Dispatchers.Default).launch {
    repeat(1000) { i ->
        println("Dolgozom $i ...")
        delay(500)
    }
}

// Később, a végrehajtás törléséhez:
job.cancel()

Fontos, hogy a coroutine belsejében legyenek törlési pontok — például suspend függvények, mint a delay(), amelyek ellenőrzik a törlési állapotot, és lehetővé teszik a coroutine helyes befejezését.