Можно ли использовать продолжение в Котлине? Есть ли примеры? - PullRequest
0 голосов
/ 08 сентября 2018

В Котлине есть пакет для продолжений , но он помечен как экспериментальный. Там нет документации, кроме API, и нет учебника или примеров, где я мог бы найти. Кто-нибудь знает, можно ли его уже использовать? Что будет примером его использования?

Ответы [ 2 ]

0 голосов
/ 09 сентября 2018

Когда вы говорите «продолжения», вы на самом деле имеете в виду «сопрограммы».Продолжение является частью этой истории.

kotlin-coroutines-неофициальный от команды JetBrains - отличный ресурс, чтобы начать с сопрограмм.Если вы хотите использовать их для асинхронного программирования на Android, особенно обратите внимание на раздел , заключающий в себе обратные вызовы , которые предоставляет ваш существующий асинхронный API, превращающий существующие вызовы функций Java в Kotlin suspend fun s.

О статусе эксперимента см. Ответ Романа Елизарова на этот вопрос.Вот основной момент:

Сопрограммы Kotlin могут и должны использоваться в производстве.Это было главной причиной их официального выпуска в Kotlin 1.1.Выпустив их, команда JetBrains взяла на себя обязательство поддерживать обратную совместимость в отношении любых изменений, которые вносятся в них в второстепенных выпусках по мере их развития, в то же время позволяя людям безопасно использовать их в сложных производственных приложениях.

Нет абсолютно никакой причины ждать 1,3, чтобы начать использовать сопрограммы.Все, что вы напишите сегодня, будет работать в обозримом будущем без изменений, и, кроме того, после выпуска будет очень легко переключиться с kotlinx.coroutines.experimental на kotlinx.coroutines.API-интерфейсы уже очень стабильны, и большинство изменений теперь относятся к каналам и актерам.

0 голосов
/ 08 сентября 2018

Интерфейс Continuation является частью API поддержки сопрограмм в стандартной библиотеке. Вы можете начать изучение сопрограмм со страницы документации или из библиотеки kotlinx.coroutines , в которой содержится обширное руководство по программированию сопрограмм.

Сопрограммы экспериментальны в Kotlin 1.1 и 1.2, но было объявление , что они собираются стабилизироваться в 1.3.

...