Não tenho certeza, mas acredito que o seu codigo trava devido a um loop eterno no while, você verificou se a condições para sair é atendida em algum momento, se não foi quando chega a execução a este pedaço ela fica presa no loop do while e não sai mais, ai trava mesmo a sua aplicação, faz um teste simples, coloca um system.out.println(“loop while”) dentro do while e coloca um fora com “saiu do loop”, ai você já sabe se esta saindo do loop ou não.
E
entanglement
Nada que demore pode ser feito na mesma thread do Swing. Por exemplo, accept demora (porque espera alguém fazer uma conexão), portanto não pode estar na mesma thread do Swing.
Lana_Csil
entanglement;
não entendi oq vc quis dizer, sou muito goof em java ainda! De qualquer maneira eu retirei o accept do while , pois é realmente desnecessário ficar entrando ali
willCesar;
fiz o teste o problema era um loop eterno mesmo, obrigada pela “luz”
Lana_Csil
Pessoal!
Alterei meu código da seguinte maneira:
try{
ServerSocketservidor=newServerSocket(this.porta);jtxtConectados.append("Porta 12345 aberta! \n");//aceitaumclienteSocketcliente=servidor.accept();//jtxtConectados.append("Nova conexão com o cliente "+cliente.getInetAddress().getHostName()+"\n");////adicionaasaídadoclientedalista//PrintStreamps=newPrintStream(cliente.getOutputStream());//this.clientes.add(ps);returntrue;}catch(IOExceptione){
e.getMessage();returnfalse;}
Abaixo da parte de aceitar o cliente esta em comentario pois fiz alguns testes e descobri que a aplicação trava ali! Oq pode ser?
Outra coisa, eu não sei trabalhar com exceptions, poderiam me dizer se meu catch esta correto?
Att;