Criei uma Thread do tipo socket para estabelecer conexões entre Cliente e Servidor, funciona direito mas preciso dar um sleep() nessa thread caso a conexão esteja indisponivel naquele momento, pra tentar mais tarde abrir uma nova conexão. O problema é que quando a conexão falha ele direciona o erro pra o try catch e não me permite dar um sleep nessa thread. Agradeço se alguem tiver uma solução…ja tentei varias coisas (metodo this.wait()) por exemplo, mas ele nao aguarda e tenta abrir a conexao de novo.
Atenciosamente,
Wagner Lucca (sisinfo 4º ano- UMC / Projeto Final de Curso)
Não existe thread "do tipo socket". Threads não são classes, nem objetos. Threads são linhas de execução que podem ser controladas por objetos e blocos de sincronização.
Bom, quando você não se conecta, o java te avisa isso lançando uma exceção, certo? Então, basta fazer algo como:
Sockets=null;while(s==null){try{s=newSocket(address,port);}catch(IOExceptione){try{Thread.sleep(3000);//Vamos esperar um pouco até tentar novamente.}catch(InterruptedExceptione){}}}
W
wagner.lucca
Primeiramente, eu me expressei mal, deu a entender que eu tinha criado uma Thread do tipo socket, sendo que Thread é um processo e socket é outra coisa totalemente diferente. No entanto a explicação foi de grande valia, solucionando o meu problema…ja estava a mais de duas semanas procurando a solução, isto estava me preoculpando pois meu cronograma do Projeto Final de Curso estava correndo o risco de ficar atrasado. Agradeço a ajuda do Sr. ViniGodoy e a todos do GUJque contribuem para sanar as dúvidas do programadores que estão desvendando o potencial do Java.
Mais uma vez obrigado…
Atte.
Wagner Lucca(Sisinfo 4º ano - UMC / SP)
ViniGodoy
Olá Wagner.
Acho que não precisa me tratar por senhor, talvez “grande mestre” seja mais adequado. :lol: Ou pode só me chamar de Vinícius mesmo.
Que bom que conseguiu resolver o seu problema. Sempre que tiver dúvida, posta aqui que a gente te ajuda a resolver. Principalmente agora, com pressão de cronograma.
Trabalho final é fogo, a gente fica cansado e a cabeça para de funcionar direito.