Junior — Middle
Como implementar um pool de threads para executar tarefas na sua aplicação?
sobes.tech IA
Resposta da IA
Para implementar um pool de threads numa aplicação Android, pode usar a classe ThreadPoolExecutor do Java ou Kotlin.
Exemplo em Kotlin usando Executors.newFixedThreadPool:
import java.util.concurrent.Executors
// Criar um pool de 4 threads
val threadPool = Executors.newFixedThreadPool(4)
// Enviar tarefas para execução
threadPool.execute {
// Código da tarefa 1
println("Tarefa 1 está a ser executada no thread ${Thread.currentThread().name}")
}
threadPool.execute {
// Código da tarefa 2
println("Tarefa 2 está a ser executada no thread ${Thread.currentThread().name}")
}
// Após terminar o trabalho, o pool deve ser encerrado corretamente
threadPool.shutdown()
Se estiver a usar Kotlin Coroutines, pode usar Dispatchers.IO ou criar o seu próprio pool de threads com newFixedThreadPoolContext.
Um pool de threads permite limitar o número de threads que trabalham simultaneamente, ajudando a usar os recursos de forma eficiente e a evitar criar um número excessivo de threads.