Junior — Middle
Pode explicar o que é um thread Worker no contexto da programação multithread?
sobes.tech IA
Resposta da IA
No contexto da programação multithread no Android, o thread Worker é um thread separado que executa tarefas longas ou intensivas em recursos fora do thread principal (UI). Isso permite não bloquear a interface do utilizador e manter a capacidade de resposta da aplicação.
Por exemplo, o carregamento de dados da rede, processamento de ficheiros ou cálculos complexos são realizados num thread Worker. No Android, frequentemente usam-se classes como AsyncTask (obsoleta), HandlerThread, ExecutorService ou componentes modernos da biblioteca WorkManager.
Exemplo de uso de ExecutorService para iniciar uma tarefa num thread Worker:
ExecutorService executor = Executors.newSingleThreadExecutor();
executor.execute(() -> {
// Operação longa
performLongTask();
// A atualização da UI deve ser feita no thread principal
runOnUiThread(() -> updateUI());
});