Что делает main-safe в Kotlin сопрограммах? - PullRequest
0 голосов
/ 01 апреля 2020

Я изучаю сопрограммы Kotlin. Текст А взят из https://codelabs.developers.google.com/codelabs/kotlin-coroutines/#8

Что означает главный сейф в Kotlin сопрограммах?

Означает ли это, что система будет запускать их в фоновом потоке автоматически, когда это необходимо?

Означает ли это, что я никогда не буду использовать код, такой как withContext(Dispatchers.IO), в операциях Room и Retrofit?

Текст A

Функции Room и Retrofit делают функции приостановки главным образом безопасными. Безопасно вызывать эти функции приостановки из Dispatchers.Main, даже если они извлекаются из сети и записываются в базу данных.

1 Ответ

2 голосов
/ 01 апреля 2020

Что означает main-safe [для] Kotlin сопрограмм?

Вы буквально цитируете ответ сами:

Можно безопасно назвать эти приостановить веселье от Dispatchers.Main, даже если они извлекаются из сети и пишут в базу данных.

И ответ на

Означает ли это, что я никогда не буду использовать код, такой как withContext (Dispatchers.IO) в операциях Room и Retrofit?

: Правильно (при условии, что вы настроили их правильно, например, используйте модификатор suspend в определениях забавных модификаций).

...