Thread.Start multiplos

Boa Tarde, pessoal, minha duvida é como posso executar os 3 arquivos em thread. exemplo

new primeira(“Esta esecutando esta primeiro”) .start();
new Segunda(“Esta esecutando esta em segundo”) .start();

dentro das Thread ela faz primeiro o conteudo da numero 1 para depois começar a 2ª minha pergunta, é se tem algum comando que faça ela entender para startar as duas juntas como um exemplo

new (primeira) && (segunda) && (terceira) && (quarta) .start(); algo do genero. agradeço quem ja tiver passado por isso.

Está meio confuso o que você quer. Se você quer que ambas iniciem exatamente no tempo, isso não é impossível. Você pode disparar várias threads em sequência e elas executarão em paralelo na medida em que for possível (alternando entre si). Elas iniciam com um intervalo de tempo minúsculo entre si, mas não ao mesmo tempo.

Note que você não precisa iniciar a thread no momento que é criada. Pode fazer isso posteriormente:

// cria as threads, mas não as inicia
Thread primeiraThread = new Primeira(); // supondo que Primeira estenda de Thread
Thread segundaThread = new Segunda// supondo que Segundaestenda de Thread

primeiraThread.start();
segundaThread.start();

Abraço.

1 curtida

Obrigado Terra, minha duvida era esta, como na primeira tenho varios calculos e estao fazendo paralelos, percebi que só depois de 1 hora ele chamaria a segunda, vou ver se faço um jar pra cada e executo em separado ai executo as 3 uma perto da outra mas cada uma com seu .jar. Obrigado mais uma vez.

Se suas Threads fazem algum laço muito custoso, então coloque uma chamada ao Thread.yield() entre uma iteração e outra para ceder uma fatia de tempo às outras Threads.

2 curtidas