Interface Congelando! JChat

4 respostas
squall926

Ola!!!
Estou criando um chat, e tendo problemas…
Sempre que no servidor roda a linha

while(true){ ..... Socket s = serverSocker.accept(); ..... }
a interface congela até que um cliente se conecte au server, sei que isso é porque o accept() espera até que um cliente connect, mas como posso fazer isso sem travar minha inerface???
Tentei fazer uma classe Runnable, mas tambem trava o evento até, a chegada do cliente, algem pode me ajudar?

4 Respostas

afdestro

usa thread…
ou implementa “melhor” o teu Runnable…

ViniGodoy
Exatamente. Se você  tornou a sua classe runnable, tem que fazer.

Thread thread = new Thread(objetoDaSuaClasse);

thread.start();

Isso irá disparar uma segunda linha de execução na sua aplicação.

squall926

Bom dia!!!
eu usei um Executor pra executar a classe com o metodo q faz congelar, mas o evento(no meu caso um JButton) fica congelado do mesmo jeito, até o modo .accept() …
O Thread Pode resolver?

ViniGodoy

Sim. O thread irá resolver. Com uma nova thread, parte do seu programa fica esperando o accept enquanto outra parte fica respondendo o usuário.

Criado 4 de janeiro de 2007
Ultima resposta 5 de jan. de 2007
Respostas 4
Participantes 3