为多个连接使用tcplistener获取网络流
本文关键字:tcplistener 获取 网络 连接 | 更新日期: 2023-09-27 18:09:41
我正在尝试为我正在收听的每个客户端提供不同的网络流(使用tcpllistener)下面是一个示例代码:
while(listener.Pending())
{
Socket sock = listener.AcceptSocket();
NetworkStream stream = new NetworkStream(sock);
list.Add(stream);
}
我的问题是,列表将由不同的网络流组成,每个客户端一个试图建立连接?泰
是的,每个套接字将得到一个NetworkStream,并且Accept
- ed套接字是特定于客户端的。
但是你误用了Pending
函数。您应该使用异步方法BeginAcceptSocket
或AcceptAsync
。一旦没有客户端试图连接,while(listener.Pending())
循环将退出,这将有效地阻止您获得连接。