Bom, se você já utiliza Coroutines
e sua arquitetura é a MVVM ou então Clean Architecture, ou até uma mistura dos dois, você provavelmente já ouviu falar de viewModelScope
.
De forma bem resumida, o viewModeScope
nada mais é do que um coroutineScope
, ou seja, um bloco onde eu posso executar minhas coroutines
sem travar a thread em que estou executando.
Ele respeita o ciclo de vida do seu ViewModel
, o que facilita o cancelamento de coroutines
que não são mais necessárias, evitando assim o temido memory leak
👻 .
Tá... então se eu tenho uma suspend fun
e quero executar do meu ViewModel
, é só só colocar dentro do viewModelScope
que vai estar tudo certo e meu app não vai travar e minha MainThread vai ficar livre??