Junior — Middle
Quais recursos e quanto tempo são necessários para criar e lançar um novo thread de execução?
sobes.tech IA
Resposta da IA
A criação e lançamento de um novo thread em Java requer certos recursos:
- Memória — é alocado um bloco de memória separado para a pilha do thread (geralmente algumas centenas de kilobytes, o tamanho pode ser ajustado).
- Tempo de CPU — leva algum tempo para inicializar e lançar o thread, incluindo o agendamento pelo sistema operativo.
- Recursos do sistema — criar um thread envolve chamadas ao sistema, o que pode ser dispendioso quando há muitos threads.
Exemplo de criação de um thread:
Thread thread = new Thread(() -> {
System.out.println("Thread iniciado");
});
thread.start();
Devido aos custos de criar threads, muitas vezes usam-se pools de threads (ExecutorService) para reutilizar threads já criados e reduzir os custos gerais.