Na kotlinx.coroutinesbiblioteca, você pode iniciar uma nova rotina usando launch(com join) ou async(com await). Qual a diferença entre
Na kotlinx.coroutinesbiblioteca, você pode iniciar uma nova rotina usando launch(com join) ou async(com await). Qual a diferença entre
Estou lendo Kotlin Coroutine e sei que é baseado em suspendfunções. Mas o que isso suspendsignifica? A co-rotina ou função é suspensa? De https://kotlinlang.org/docs/reference/coroutines.html Basicamente, co-rotinas são cálculos que podem ser suspensos sem bloquear um thread Já ouvi muitas...
Tenho lido a documentação do Kotlin e, se entendi corretamente, as duas funções do Kotlin funcionam da seguinte maneira: withContext(context): muda o contexto da co-rotina atual, quando o bloco dado é executado, a co-rotina volta para o contexto anterior. async(context): Inicia uma nova...
Atualmente, estou tentando aproveitar mais as corotinas da kotlin. Mas enfrento um problema: ao usar moshi ou okhttp dentro dessas corotinas, recebo um aviso: "chamada de método de bloqueio inadequado" Qual é a melhor maneira de corrigir isso? Eu realmente não quero ser inapropriado...
Tenho algumas perguntas sobre o Kotlin Flow Eu posso observar o LiveData de vários fragmentos. Posso fazer isso com o Flow? Se sim, então como? Podemos ter vários LiveData de um único LiveData usando map& switchMap. Existe alguma maneira de ter vários fluxos a partir de um único fluxo de...
Atualização: Funciona se eu executar primeiro uma corotina sem tempo limite e depois com Timeout. Porém, se eu executar uma corotina com Timeout primeiro, isso me dará um erro. O mesmo vale para o Async também. Estou criando um aplicativo multiplataforma de demonstração kotlin em que estou...
As corotinas da Kotlin fornecem alguma garantia "acontece antes"? Por exemplo, existe uma garantia "acontece antes" entre a gravação mutableVare a leitura subsequente (potencialmente) em outro encadeamento neste caso: suspend fun doSomething() { var mutableVar = 0 withContext(Dispatchers.IO) {...
No último Google I / O, Jose Alcerreca e Yigit Boyar nos disseram que não devemos mais usar o LiveData para buscar dados. Agora devemos usar as funções de suspensão para buscas de uma só vez e usar o Flow de Kotlin para criar um fluxo de dados. Concordo que as corotinas são ótimas para obter buscas...
Exceto pelo bloco em que declarei uma assinatura, todos os blocos têm o mesmo valor de identidade e afirmam ser declarados na linha 1, independentemente de onde ocorram. Alguém poderia lançar alguma luz sobre por que esse é o caso? say 「Let's look at some blocks…」; if True {...
Você tem alguma idéia de como implementar o padrão de repositório com as rotinas de rede NetworkBoundResource e Kotlin? Sei que podemos lançar uma corotina dentro de um GlobalScope, mas isso pode levar ao vazamento de corotina. Gostaria de passar um viewModelScope como parâmetro, mas é um pouco...