Como implementar o multithreading num programa?
sobes.tech IA
Resposta da IA
Para implementar multitarefa (multithreading) numa aplicação Android, podem ser utilizados vários métodos:
- Classe Thread — criar uma nova thread sobrescrevendo o método
run():
new Thread(new Runnable() {
@Override
public void run() {
// código a ser executado numa thread separada
}
}).start();
-
Uso de Handler e Looper — para troca de mensagens entre threads.
-
AsyncTask (obsoleto, mas ainda comum) — simplifica a execução de tarefas em background com atualização da UI.
-
ExecutorService — pool de threads para gerir várias tarefas.
-
Coroutines do Kotlin — método moderno e conveniente para programação assíncrona, permitindo escrever código semelhante ao código síncrono.
Exemplo de criação e execução de uma thread:
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
// Operação longa
}
});
thread.start();
É importante lembrar que a atualização da UI deve ocorrer apenas no thread principal (UI thread), por isso, para passar resultados de uma thread de background, usam-se Handler, runOnUiThread() ou outros mecanismos.