Sobes.tech
Junior — Middle

İcra zamanı korutinlər arasında ierarhiyadan danışmaq mümkündürmü?

sobes.tech Süni İntellekt

AI-dan cavab

Bəli, Kotlin-də korutinlər hierarxik struktura malik ola bilər. Başqa bir korutina kontekstində (məsələn, launch istifadə edərək başqa bir korutina daxilində) korutina başladığınız zaman, valideyn-uşaq əlaqəsi yaranır. Əgər valideyn korutina ləğv olunarsa, onun bütün uşaq korutinləri avtomatik olaraq ləğv edilir. Bu, korutin qruplarının həyat dövrünü idarə etməyə və resurs sızıntılarının qarşısını almağa imkan verir.

Nümunə:

val parentJob = CoroutineScope(Dispatchers.Default).launch {
    val childJob = launch {
        // uşaq korutinasının işi
    }
}

// parentJob ləğv olunduqda, childJob də avtomatik olaraq ləğv edilir
parentJob.cancel()