Sobes.tech
Junior — Middle

Kotlin'de coroutinler kullanırken ana dağıtıcı ve varsayılan dağıtıcı nasıl farklılık gösterir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Kotlin'de, dispatcher'lar (göndericiler), coroutine'un hangi thread veya thread havuzunda çalışacağını belirler.

  • Main dispatcher — ana (UI) thread üzerinde coroutine'ları başlatan dispatcher'dır. Arayüzü güncellemek ve UI öğeleriyle etkileşimde bulunmak için kullanılır, burada ana thread'de yürütme gereklidir.

  • Default dispatcher — varsayılan dispatcher olup, CPU yoğun görevler için optimize edilmiş bir thread havuzunu kullanır. Ana thread'i engellemez ve arka plan hesaplamaları için uygundur.

Örnek:

// Ana thread'de coroutine başlatma
CoroutineScope(Dispatchers.Main).launch {
    // UI güncellemesi
}

// Arka plan işi için coroutine başlatma
CoroutineScope(Dispatchers.Default).launch {
    // ağır hesaplamalar
}

Özetle, Main dispatcher — UI thread için, Default — arka plan CPU görevleri için kullanılır.