【问题标题】:TCP Socket Error: Only one usage of each socket address (protocol/network address/port) is normally permittedTCP 套接字错误:每个套接字地址(协议/网络地址/端口)通常只允许使用一次
【发布时间】:2010-12-26 16:31:21
【问题描述】:

我正在开发一个小型 TCP 客户端/服务器库。

当我创建客户端并将其连接到服务器时,我遇到了这个问题。它给了我这个例外

每个套接字地址(协议/网络地址/端口)通常只允许使用一次

我的代码是。

 public TCPClient(string remoteIPAddress, int port)
        {
            this.remoteIPAddress = IPAddress.Parse(remoteIPAddress);
            this.port = port;

            IPEndPoint remoteEndPoint = new IPEndPoint(this.remoteIPAddress, this.port);
            tcpClient = new TcpClient(remoteEndPoint);
        }

这里是 TCPServer

 public TCPServer(int listeningPort)
        {
            this.listeningPort = listeningPort;            

            tcpListenter = new TcpListener(this.listeningPort);
            workers = new List<TCPServerWorker>();
            this.keepRunning = false;
        }

任何帮助说明为什么我会收到此异常

【问题讨论】:

  • @Mohsan:继续并将您的答案标记为已接受;)

标签: c# sockets tcp


【解决方案1】:

解决了。

我用过

 tcpClient = new TcpClient();
            tcpClient.Connect(remoteIPAddress, port);

【讨论】:

  • 如果将远程 ip 和端口放在 TcpClient 构造函数中,则指定源 ip/端口。我猜 Mohsan 之前使用过构造函数。
猜你喜欢
  • 2016-02-02
  • 1970-01-01
  • 2019-05-03
  • 2017-06-09
  • 2011-01-15
  • 2010-11-23
相关资源
最近更新 更多