Это буквальные переводы:
launch(UI) { block() }
-> GlobalScope.launch(Main, block = block)
async(CommonPool) { block() }
-> GlobalScope.async(block = block)
. Кроме того, ваша функция помечена как suspend
без причины.
async(block).await()
-> withContext(Default, block = block)
Однако в стабильных сопрограммах появилась очень важная дополнительная функция: структурированный параллелизм. Вы не должны использовать GlobalScope
, как показано, но должны определять правильные области видимости и использовать их.