Junior — Middle
Оё метавонед шарҳ диҳед, ки дар мафҳуми 'Dispatchers' чӣ маъно дорад ва онҳо чӣ гуна истифода мешаванд?
sobes.tech AI
Ҷавоб аз AI
Дар Kotlin Coroutines, Dispatchers — обекти, ки муайян мекунанд, ки дар кадом сӯроҳ ё пуле аз сӯроҳҳо корутин иҷро мешавад.
Типҳои асосии dispatcher-ҳо:
Dispatchers.Main— барои кор бо сӯроҳи UI (масалан, дар Android).Dispatchers.IO— барои амалиётҳои воридотӣ-баромадӣ, монанди хондани файлҳо ё дархостҳои шабакавӣ.Dispatchers.Default— барои вазифаҳои шадиди CPU.Dispatchers.Unconfined— корутинро дар сӯроҳи ҳозира оғоз мекунад, аммо метавонад гузарад.
Истифода:
GlobalScope.launch(Dispatchers.IO) {
// дар пуле аз сӯроҳҳо барои IO иҷро мешавад
val data = fetchData()
withContext(Dispatchers.Main) {
// навсозии UI
updateUI(data)
}
}
Бинобар ин, dispatcher-ҳо кӯмак мекунанд, ки сӯроҳҳоро самаранок идора кунанд ва UI-ро банд накунанд.