Pessoal,
Tenho o seguinte código.
///inicio do programa.....
boolean espera = true;
Thread thread1 = new Thread(){
public void run(){
Classe1 tabela = new Classe1(listaColunasTabela ,listaCabecalhoArquivo);
while(espera){
///
}
}
};
thread1.start();
synchronized (thread1){
while (espera){
thread1.wait();
System.out.println(espera);
}
};
System.out.println("saiu");
/// resto do programa...
A classe ‘Classe1’ é um frame em que escolho algumas opções para o meu programa e dou OK. (pressiono um botão, seto a variável ‘espera’ para false)
O questão é: gostaria que ao abrir a classe ‘Classe1’ , a Thread Principal que a chamou parasse e esperasse até o OK da classe ‘Classe1’ para continuar.
Sem o while que está dentro do run da thread1, o programa imprime uma vez ‘true’ e mais nada, para onde foi o fluxo do programa?
Coloquei o while e está funcionando pq ele segura a execução do programa até que eu set a variável espera para false (dar OK).
Acredito não ser a maneira correta, será??
valeu.