Programação concorrente

3 respostas
J

Olá!

Na minha aplicação sugiu a necessidade de parar a execução de um loop disparado por um jbutton(inicio) com o disparo de outro jbutton(pare). Tipo assim clico em iniciar, inicio o loop, enquando o loop está em execução, surge a necessidade de pará-lo, o caso de uso pede para pará-lo com outro jbutton (pare). Como posso resolver esse problema com programação concorrente(Thread)?

3 Respostas

E

Primeiro verifique se é isso mesmo que você quer. Se for, você poder criar uma Thread sempre que clicar no botão inicio e nessa, pode existir um método parar execução que modifica a variável que faz o loop funcionar.

J

Você pode fazer algo assim:

public class ThreadLoop extends Thread {
   public void run() {
      while(condicao1 && !isInterrupted()) {

      }
   }
}
//botao 1
Thread t = new ThreadLoop();
t.start();

//botao 2
t.interrupt();
J

Muito obrigado!
Resolveu meu problema.

Até a próxima.

Criado 22 de março de 2009
Ultima resposta 24 de mar. de 2009
Respostas 3
Participantes 3