2

我正在编写一个用于读取和写入管道的程序。我发现通过使用 PeekNamedPipe 函数,我可以获得准备读取的字节数。但我有一个问题,我该如何等待即将到来的数据。我可以使用 WaitForSingleObject 函数在管道上等待从管道的另一端获取数据吗?问候,

4

1 回答 1

1

您可以使用Overlapped I/O,或者最好使用Completion Routines。它们都是异步的(非阻塞),但我更喜欢完成例程,因为您注册了一个回调,当有数据要读取时调用该回调 - 无需轮询数据。查看链接并构建并运行示例。理解/实施可能需要一点时间,但是当它运行良好时,你会很高兴你花时间把它做好:)。

于 2013-11-05T10:41:41.840 回答