首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >监听多个TCP端口

监听多个TCP端口
EN

Stack Overflow用户
提问于 2010-12-22 03:10:27
回答 2查看 4.7K关注 0票数 1

我正在尝试做以下几件事:

代码语言:javascript
代码运行次数:0
运行
复制
// Create IPv4 TCP/IP sockets. 
TcpListener listener = new TcpListener(IPAddress.Any, 11000);
TcpListener listener2 = new TcpListener(IPAddress.Any, 12000);

// Listen for incoming connections.
listener.Start();
listener2.Start();

对TCPListener.Start()的第二次调用抛出一个socketexception,声明“通常只允许对每个套接字地址(协议/网络地址/端口)使用一次”。

由于我使用的是不同的端口,我认为一个服务器应用程序可以监听多个端口?

有没有其他方法可以做到这一点?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-12-22 03:21:19

你的代码没问题,可以在我的机器上运行。只有在两个监听程序都成功启动后,防火墙才会弹出。正如每个人都指出的那样,您在端口12000上打开了一个应用程序。

执行netstat -a -b并查找哪个应用程序正在使用它。

示例:

代码语言:javascript
代码运行次数:0
运行
复制
  TCP    [::]:12000             [::]:0                 LISTENING
 [services.exe]
票数 3
EN

Stack Overflow用户

发布于 2010-12-22 03:17:15

应用程序可以在任意数量的端口上设置tcp侦听器。

如错误所示,在该特定端口上有其他侦听对象。

我的猜测是,你的应用程序正在运行两次,或者你在运行之后没有进行适当的清理。请注意,您必须分别显式关闭每个接受的连接。Stop不会为你做这件事。

MSDN上的引用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4502985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档