Bom dia, alguém poderia me explicar Threads: não consegui entender!
Threads em Java
M
2 Respostas
Solucao aceita
4 likes
Thread é a classe Java responsável por implementar processos concorrentes.
Você pode disparar várias Threas e elas vão processar alguma coisa concorrentemente, disputando tempo do processador.
public class Exemplo {
public static void main(String[] args) throws Exception {
Exemplo programa = new Exemplo();
programa.executar();
}
public void executar() throws Exception {
exemploSemThread();
exemploComThread();
}
private void exemploSemThread() {
System.out.println("Inicio execucao processos 1 e 2 sem threads");
executaProcesso1();
executaProcesso2();
System.out.println("Fim execucao processos 1 e 2 sem threads");
}
private void exemploComThread() {
System.out.println("Inicio execucao processos 1 e 2 com threads");
Thread processo1 = new Thread(() -> executaProcesso1());
Thread processo2 = new Thread(() -> executaProcesso2());
processo1.start();
processo2.start();
System.out.println("Fim execucao processos 1 e 2 com threads");
}
private void executaProcesso1() {
for (int i = 1; i <= 50; i++) {
System.out.println("processo 1 esta fazendo algo: " + i);
aguarda(100);
}
}
private void executaProcesso2() {
for (int i = 1; i <= 50; i++) {
System.out.println("processo 2 esta fazendo algo: " + i);
aguarda(100);
}
}
private void aguarda(int milissegundos) {
try {
Thread.sleep(milissegundos);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
M
Obrigado
Criado 15 de janeiro de 2019
Ultima resposta 21 de jan. de 2019
Respostas 2
Participantes 2
Alura Git Flow: entenda o que é, como e quando utilizar Entenda o que é Git Flow, como funciona seu fluxo com branches como Master, Develop, Feature, Release e Hotfix, além de vantagens e desvantagens.
Casa do Codigo Apache Kafka e Spring Boot: Comunicacao assincrona entre... Por Eduardo Felipe Zambom Santana — Casa do Codigo