Junior — Middle
Kotlin Coroutines'da görev dağıtımının temel mekanizmalarını isimlendirebilir misin?
sobes.tech yapay zeka
AI'dan gelen yanıt
Kotlin Coroutines'te görevlerin yönlendirilmesi, coroutine'un çalıştırılacağı thread veya bağlamın seçilmesinden sorumludur. Ana yönlendirme mekanizmaları şunlardır:
- Dispatchers.Main — UI akışıyla çalışmak için kullanılır (örneğin, Android'de).
- Dispatchers.IO — giriş/çıkış işlemleri için optimize edilmiştir, örneğin dosya okuma veya ağ istekleri.
- Dispatchers.Default — CPU yoğun görevler için, örneğin hesaplamalar.
- Dispatchers.Unconfined — coroutine'yi mevcut thread'de başlatır ve ilk askıya alma noktasına kadar çalışır, sonra devam eder.
- Özelleştirilmiş dispatcher'lar — kendi dispatcher'larınızı, CoroutineDispatcher arayüzünü uygulayarak oluşturabilirsiniz.
Örnek:
GlobalScope.launch(Dispatchers.IO) {
// Arka planda giriş-çıkış işlemi yap
}
Dispatcher'lar, görevleri thread'ler arasında verimli bir şekilde dağıtarak uygulamanın performansını ve yanıt verme kabiliyetini artırır.