Kotlin Multiplatform Academy · Aula

CoroutineScope e ciclo de vida

Associe o trabalho assíncrono compartilhado ao scope correto e cancele-o

Aula 3 de 413 etapas

CoroutineScope e ciclo de vida é uma aula grátis de Kotlin Multiplatform Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Kotlin Multiplatform Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.

As Corrotinas Precisam de um Lar

Toda corrotina pertence a um CoroutineScope. O escopo determina por quanto tempo o trabalho pode existir e quando deve parar.

Por que o Escopo Equivale ao Ciclo de Vida

Associe um escopo a uma tela ou sessão. Quando esse elemento termina, o escopo cancela suas corrotinas para que nenhum trabalho seja executado sobre uma interface que já não existe.

launch Inicia o Trabalho

Inicie uma corrotina com launch em um escopo. Ela executa o bloco e o acompanha como parte desse escopo.

scope.launch { refresh() }

Crie um Escopo no Código Compartilhado

Crie um com um Job e um distribuidor. Esse escopo compartilhado pode conduzir o trabalho assíncrono de um ViewModel usado pelos dois aplicativos.

val scope = CoroutineScope(SupervisorJob() + Dispatchers.Main)

SupervisorJob Isola as Falhas

Um SupervisorJob impede que um filho com falha cancele os irmãos. Uma requisição com problema não encerrará a tela inteira.

Cancele para Limpar

Chame cancel quando o proprietário deixar de existir. As corrotinas de rede ou de temporizador pendentes param imediatamente, evitando vazamentos e atualizações indevidas.

fun onCleared() { scope.cancel() }

O Cancelamento é Cooperativo

As corrotinas verificam o cancelamento nos pontos de suspensão. Suas funções de suspensão param corretamente, por isso raramente é necessário usar sinalizadores manuais.

O Android já Fornece um

No Android, um ViewModel já oferece viewModelScope. Ele é cancelado automaticamente quando o ViewModel é limpo, então reutilize-o.

viewModelScope.launch { load() }

O iOS Exige Cancelamento Manual

No iOS, não há um escopo automático. Mantenha seu escopo compartilhado e chame cancel a partir do Swift quando a tela desaparecer. 📱

Nunca Use GlobalScope

Evite o GlobalScope: ele vive para sempre e ignora os ciclos de vida. Suas corrotinas vazam e podem atualizar telas que já não existem.

Defina o Escopo e Depois Esqueça

Escolha o escopo correto uma vez, e o cancelamento será automático. Escopos conscientes do ciclo de vida mantêm o trabalho assíncrono compartilhado seguro nas duas plataformas. 🎯

Verificação Rápida

Vamos confirmar como os escopos protegem suas corrotinas.

Recapitulação

Aprendeu que um CoroutineScope associa o trabalho assíncrono a um ciclo de vida: launch o inicia, cancel faz a limpeza e você evita o GlobalScope. 🎉

Grátis para começar

Aprenda Kotlin com um tutor de IA — grátis

Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.

Cursos
30
Aulas
120

Perguntas Frequentes

A aula “CoroutineScope e ciclo de vida” é grátis?

Sim — o texto completo de “CoroutineScope e ciclo de vida” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Kotlin Multiplatform Academy, atualize para CoddyKit PRO. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.

O que vou aprender em “CoroutineScope e ciclo de vida”?

Associe o trabalho assíncrono compartilhado ao scope correto e cancele-o Você pratica Kotlin Multiplatform Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Kotlin Multiplatform Academy?

Nenhuma experiência prévia é necessária. Kotlin Multiplatform Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “CoroutineScope e ciclo de vida”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Kotlin Multiplatform Academy?

Sim. Cada aula de Kotlin Multiplatform Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Funções suspend que funcionam em todos os lugares
  2. Dispatchers em todas as plataformas
  3. CoroutineScope e ciclo de vida
  4. withContext e concorrência estruturada
← Voltar para Kotlin Multiplatform Academy