Значение этого кода приостановить веселье get(url: String) = withContext(Dispatchers.IO){/**/}

Я новичок в разработке для Android. Когда я читал средний пост https://medium.com/androiddevelopers/coroutines-on-android-part-i-getting-the-background-3e0e54d20bb Я наткнулся на этот код:

suspend fun get(url: String) = withContext(Dispatchers.IO){/*...*/}

чего я не мог понять. Я пробовал поиск, но не смог найти код с похожим синтаксисом. Может кто-нибудь объяснить это?


person BRUCE    schedule 04.08.2019    source источник
comment
Эта статья пытается объяснить этот конкретный блок кода. Это может помочь процитировать любой текст статьи, который вы не понимаете, и если у вас есть опыт работы с темами на любом компьютерном языке.   -  person Morrison Chang    schedule 04.08.2019


Ответы (1)


Это относится к asynchronous или non-blocking программированию с использованием сопрограмм. Это функция приостановки, которая может приостановить выполнение сопрограммы.

withContext позволяет вашей функции возвращать значение (вы также можете использовать launch, который вернет задание).

Из документов:

Calls the specified suspending block with a given coroutine context, suspends until it completes, and returns the result. Подробнее читайте здесь.

Dispatchers.IO — это экземпляр диспетчера сопрограмм по умолчанию для фоновой сопрограммы. Подробнее здесь.< /а>

person Armin    schedule 04.08.2019