Duvida Sockets com Threads

1 resposta
wagne23

Bom dia, estou precisando construir um aplicativo que mande comandos para todas as estações de uma rede windows, dai eu procurei sobre sockets aqui no guj e econtrei aquele artigo sobre o assunto. Consegui fazer o exemplo de cliente e servidor funcionar, mas percebi que toda vez que o cliente manda algo para o servidor o servidor para a execução e eu não posso mandar outra requisição sem ter que reiniciar o servidor. Esse é o meu primeiro problema, eu tentei criar uma thread (que eu acho que seja a solução) mas não funcionou. Outro problema que eu tenho é que eu preciso do caminho inverso, tipo eu vou ficar em uma estação que será o servidor e esse servidor terá que mandar esse comando para todas as outras estações que estarão rodando o cliente. Outra coisa que poderia me ajudar seria um modo de verificar todas as estações que estão na rede, por ip ou nome do host. Será que alguem pode me dar um caminho?

1 Resposta

ViniGodoy

Dê uma olhada nesse exemplo: http://www.guj.com.br/posts/list/15/74218.java#506163

Um deles é um chat usando TCP, bem simples, mas já mostra para você como fazer o servidor aceitar várias requisições (basicamente, é só coloca-lo num loop).

Quanto a fazer os broadcasts. A primeira forma é usar UDP (o segundo chat do exemplo usa), pois ele é um protocolo não orientado a conexão. Assim, o servidor poderá disparar mensagens para todos os clientes, sem que eles tenham que necessariamente se manter com uma conexão ativa.

A segunda forma é fazer com que todos se conectem no servidor, como o messenger faz. O servidor guarda então a lista de todos os sockets ativos, e repassa o comando por essa lista.

Criado 15 de julho de 2010
Ultima resposta 15 de jul. de 2010
Respostas 1
Participantes 2