Sobes.tech
Junior — Middle

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:

  1. 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();
  1. Uso de Handler e Looper — para troca de mensagens entre threads.

  2. AsyncTask (obsoleto, mas ainda comum) — simplifica a execução de tarefas em background com atualização da UI.

  3. ExecutorService — pool de threads para gerir várias tarefas.

  4. 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.