Array
(
)

Dúvidas básicas sobre conexão com sockets (TCPListener e TCPClient)

João Telles
   - 25 mar 2015

Boa tarde pessoal!
Primeiramente gostaria de me desculpar pelas perguntas óbvias, pois realmente sou novo nisso. Vamos lá:
Quero criar 2 aplicativos, um é servidor e outro cliente. Busquei alguns códigos que utilizam TCPListener e TCPCliente e implementei, estão funcionando bem. Contudo algumas coisas eu não compreendo.
Passo a passo:
1) Inicio o servidor, nesse momento ele está aguardando por conexões.
2) Inicio o cliente, que consegue enviar uma mensagem ao servidor.
3) O servidor recebe a mensagem e eu simplesmente mostra ela num MessageBox.
4) Eu até consigo enviar mensagens do servidor para o cliente enquanto ele estiver ativo.
A pergunta é a seguinte:
É possível o cliente se comporte como o servidor e fique "escutando" mensagens do servidor? Pois pelo que percebo, o TCPClient envia a mensagem e já se desconecta.. não consigo fazer algo contínuo.
Para solucionar esse problema, pensei em fazer cada aplicação com 1 cliente e 1 servidor, usando 2 portas diferentes.. mas achei isso meio "gambiarra", não tem como mesmo o cliente e o servidor se comunicarem num fluxo contínuo? Como se fosse num chat?