如何等待来自两个来源的输入?

时间:2014-09-08 15:08:31

标签: c# .net asynchronous

我有TcpClient我正在使用其NetworkStream读取数据。现在,我能够这样读:

networkStream.Read(bytesFrom, 0, ((int)socket.ReceiveBufferSize));

但是我希望能够从套接字或BlockingCollection接收来自两个不同位置的输入,并响应任何一个。现在,如果这是原生的Winapi代码,我会使用WaitForMultipleObjects等待任何一个首先提供的东西。似乎.NET等价物是WaitHandle.WaitAny,但TcpClientBlockingCollection似乎都没有等待的WaitHandle! NetworkStream有一个创建一个的方法,但它被标记为过时。

那么这样做的正确方法是什么?

0 个答案:

没有答案