Tcp客户端和服务器同时运行

时间:2018-05-21 11:12:28

标签: c# tcpclient tcplistener

我要用服务器实现客户端通信接口,这有点奇怪,我对如何开发它有疑问。

通信遵循以下规则:

  1. 这只是在TCP上完成的。
  2. 客户端向服务器发送标识自身的XML。
  3. 如果服务器响应正常,则客户端开始侦听来自服务器的请求。
  4. TcpClient可以充当服务器吗? 实现这个的最佳方法是什么?

    提前致谢。

2 个答案:

答案 0 :(得分:1)

建立连接后,“客户端”和“服务器”之间没有明显的区别。只有一个TCP流可用于在两个方向上传递信息。您应该可以使用TcpClient,因为听起来您不需要倾听新的连接或类似的东西;您只需要从现有流中读取请求并提供响应。

答案 1 :(得分:0)

建立与服务器的连接后,客户端可以发送或接收任何数据。所以如果你只是想听服务器的请求:

while(client.Connected)
{
   client.Client.Receive(data);
   DoSomething(data);
}