Junior — Middle
Quais métodos e ferramentas no Android podem ser usados para executar tarefas de forma assíncrona?
sobes.tech IA
Resposta da IA
No Android, para realizar tarefas de forma assíncrona, podem ser utilizados vários métodos e ferramentas:
- AsyncTask (obsoleto, mas ainda presente em código antigo) — permite executar operações em uma thread de fundo com atualização da UI.
- Handler e HandlerThread — para gerenciar filas de mensagens e executar tarefas em threads separados.
- Executor e ThreadPoolExecutor — para gerenciar um pool de threads.
- RxJava — biblioteca para programação reativa, útil para operações assíncronas.
- Coroutines (Corutinas) — método moderno e recomendado para programação assíncrona em Kotlin.
- WorkManager — para tarefas adiadas e periódicas que devem ser executadas mesmo quando o aplicativo está fechado.
Exemplo de uso de corutinas para uma tarefa assíncrona:
import kotlinx.coroutines.*
fun fetchData() {
GlobalScope.launch(Dispatchers.Main) {
val data = withContext(Dispatchers.IO) {
// Operação longa, por exemplo, uma requisição de rede
loadDataFromNetwork()
}
// Atualização da UI com os dados recebidos
updateUI(data)
}
}