2010-07-20 39 views
0

不知道.Net中的Socket.Select是否可以返回两个或多个元素的IList。到目前为止,在我的测试中,它们总是返回一个元素(Socket.Select位于循环内)。我可否知道你做了什么样的测试来返回两个或更多元素?C#socket.select是否可以返回多个套接字

+0

Socket.Select什么也没有返回(void)我不明白你的问题,你能澄清一下吗? – Cipi 2010-07-20 11:33:44

+0

Socket.Select修改IList参数并返回具有读/写/错误事件的套接字。对困惑感到抱歉。 – yoitsfrancis 2010-07-20 14:31:00

回答

0

使用这里“可以阅读”的例子,但它适用于其它IList参数(“可写”,“有错误”),以及:

Socket.Select回报,只要所提供的插槽中有数据可供阅读。这意味着如果在数据到达多个套接字之前输入Socket.Select,它通常会在只有一个套接字有数据可用时返回(如果您这样想,为什么要等待另一个套接字有数据?)。

要尝试多个套接字可以读取的情况,您可以在Socket.Select之前简单地添加一个Thread.Sleep,使其具有足够的延迟以允许两个发送进程同时发送其数据。

相关问题