Junior — Middle
Bir oqim ichida korutinlarning bajarilishini qanday usullar bilan o'zgartirish mumkin?
sobes.tech AI
AIdan javob
Kotlinda, korutinlar bir oqim ichida turli dispatcherlar va funksiyalar yordamida almashtirilishi mumkin:
- withContext(Dispatchers.Main) — asosiy (UI) oqimga o'tish.
- withContext(Dispatchers.Default) — CPU intensiv vazifalar uchun iplar havzasiga o'tish.
- withContext(Dispatchers.IO) — kirish/chiqish operatsiyalari uchun iplar havzasiga o'tish.
Shuningdek, yield() yordamida hozirgi oqim ichida boshqa korutina bilan volontar tarzda nazoratni uzatish mumkin.
Kontekstni almashtirish misoli:
launch {
// Asosiy oqimda ish
withContext(Dispatchers.IO) {
// Kirish/chiqish operatsiyasini bajarish
}
// Asosiy oqimga qaytish
}