Junior — Middle
Paaiškinkite async ir await pagrindinių elementų sąveikos mechanizmą korutinų apdorojimo metu.
sobes.tech AI
Atsakymas iš AI
Kotlin'e korutinler, asenkron programlama için async ve await anahtar kelimelerini kullanır.
- async yeni bir korutina başlatır ve Deferred — ertelenmiş sonucu döner.
- await, bir Deferred üzerinde çağrılır ve sonucu alınana kadar mevcut korutinanın yürütülmesini durdurur, thread'i engellemeden.
Örnek:
val deferred = async {
// Uzun süreli işlem
fetchData()
}
val result = deferred.await() // Asenkron sonucu bekliyoruz
Bu şekilde, async görevleri paralel olarak başlatmaya olanak tanır, ve await, sonuçlarını almaya devam eder, asenkronluğu koruyarak ve ana thread'i engellemeden.