Sobes.tech
Junior — Middle

Колдонмоңузда асинхрондуу корутинанын ишин токтотуу же жокко чыгаруу үчүн кандай жолдор бар?

sobes.tech AI

AIден жооп

Kotlinде, асинхрон корутинаны үзгүлтүксүз болдырмау же болдырмау үчүн, Job аркылуу болдырмау механизми колдонулат. Корутинаны болдырбоо үчүн, тиешелүү Jobда cancel() ыкмасын чакырышыңыз керек.

Мисал:

val job = CoroutineScope(Dispatchers.Default).launch {
    repeat(1000) { i ->
        println("Мен иштеп жатам $i ...")
        delay(500)
    }
}

// Кийинчерээк, аткарууну болтурбоо:
job.cancel()

Маанилүү, корутинанын ичинде болтурбоочу пункттар болушу керек — мисалы, delay() сыяктуу suspend функцияларын чакыруу, алар болтурбоо абалын текшерет жана корутинанын туура аяктоосуна мүмкүндүк берет.