CodeBlanks Logo Icon CodeBlanks

Özet - İleri coroutine'ler

CoroutineScope, Dispatcher ve Job'ı birleştirerek bir paralel iş yöneticisi yazarsın.

Özet - İleri coroutine'ler

Bu grupta CoroutineScope, Dispatchers, Job, SupervisorJob ve CoroutineExceptionHandler kavramlarını işledik. Hepsinin ortak noktası: coroutine'lerin yaşam döngüsünü ve çalışma ortamını yönetmeleridir.

Bir sonraki ders, bu parçaları bir araya getiren bir mini görev içerir. Scope ile kapsam, dispatcher ile thread, Job ile bekleme, SupervisorJob ile izolasyon ve handler ile hata yönetimi sağlanır. Birlikte kullanıldıklarında sağlam bir eşzamanlı kod ortaya çıkar.

Uygulama Tüm parçaları birleştir

runBlocking aç. val job = launch { println("Başladı") } yaz. job.join() ile bekle. Sonra println("Bitti") yazdır.

Başlangıç kodu

Main.kt
// Özet: runBlocking, launch, join
// buraya yaz
fun main() {
    
}

Örnek çözüm

Main.kt
fun main() = runBlocking {
    val job = launch {
        println("Başladı")
    }
    job.join()
    println("Bitti")
}

Beklenen çıktı

Başladı
Bitti

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Hangisi SupervisorJob ile ilgilidir?

  • Dispatchers.IO
  • Çocuk hatalarını izole eder Doğru cevap
  • runBlocking
  • launch

Açıklama: SupervisorJob bir çocuğun hatasının kardeşlere yayılmasını engeller.

2 Tüm kavramları eşle

Kavram Anlamı
CoroutineScope Kapsam
Dispatchers Thread seçimi
Job Bekleme
SupervisorJob İzolasyon
CoroutineExceptionHandler Hata yakalama

İleri seviye bölümündeki tüm dersler