C++ Windows XP 中的 Pipe ReadFile 函数设置超时

发布于 2024-12-03 19:03:07 字数 81 浏览 0 评论 0原文

有没有办法在Windows XP中执行超时的ReadFile

如果没有,有没有办法将管道与其他线程断开?

Is there a way to perform ReadFile with timeout in Windows XP?

If not, is there a way to break the pipe from other thread?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

浅暮の光 2024-12-10 19:03:07

Set up an asynchronous ReadFile using Overlapped I/O. You can then use CancelIOEx to cancel the read at any time.

知足的幸福 2024-12-10 19:03:07

假设您正在谈论命名管道,通常的方法是进行重叠读取,并在调用 WaitForSingleObject (或 WaitForMultipleObjects)时指定超时。当/如果超时到期,等待将返回 WAIT_TIMEOUT 而不是 WAIT_OBJECT_0

Assuming you're talking about a named pipe, the usual way is to do an overlapped read, and specify a timeout when you call WaitForSingleObject (or WaitForMultipleObjects). When/if the timeout expires, the wait will return WAIT_TIMEOUT instead of WAIT_OBJECT_0.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文