Fechando conexão Socket [RESOLVIDO]

4 respostas
criador

Boa tarde,

Estou fazendo uma aplicação cliente x servidor.

As minhas duas classes já estão “funcionando”, porém estou com um empecilho que tenho certeza que é
fácil de ser resolvido.

O meu servidor estabelece uma conexão na porta 9876.
O meu cliente estabelece a conexão com o servidor através desta porta.

Até ai está beleza.

Porém para o servidor receber corretamente o que o cliente mandou, preciso fechar o Socket (socket.close()).

Já vi alguns tópicos sobre isto aqui no GUJ, mas em nenhum achei realmente a minha solução.

Queria saber como mantenho o meu socket do cliente aberto e enviando dados para o servidor, sem
precisar fechá-lo toda vez que encaminho alguma requisição ao servidor.

Agradeço a atenção.

Abraços!

4 Respostas

A

Cara, cola o codigo ai pra gente dar uma olhada …

Você tá usando algum buffer ?? Se sim, tenta invocar o metodo flush() …

[]'s

criador

Cara, consegui a solução.

Estou usando PrintStream e eu estava usando o método print() porém é para utilizar o println().

Somente isto já fez com que o servidor acatasse a minha requisição e me retornasse a resposta conforme o que o cliente mandou.

Valeu pela força!

Abraço!

ViniGodoy

Já tentou usar o comando flush()?

Outra coisa, como está implementado seu protocolo? Ele deveria garantir isso.

Lembre-se que em TCP, um “write” do lado do cliente pode significar vários “reads” do lado do servidor, e vice-versa.

A

Beleza mano … mas poem um resolvido ai no titulo do topico …
A galera agradece …

[]'s

Criado 18 de maio de 2011
Ultima resposta 18 de mai. de 2011
Respostas 4
Participantes 3