回电询问管道

发布于 2024-11-08 12:39:21 字数 169 浏览 3 评论 0原文

我创建了两个管道用于子进程和父进程之间的通信。一根管道用于 STDIN,一根管道用于 STDOUT。

我想注册 STDIN 的回调函数。如果管道上有任何数据到达,则应该调用我的回调。可以在windows下实现吗。或者唯一的选择是使用线程,一个用于 STDIN,一个用于 STDOUT?

请建议

I have created two pipes for communication between child and parent process. One Pipe for STDIN and one for STDOUT.

I want to register for the call back function for STDIN. If any data arrives on the pipe, my Call back should be called. Can it be done in windows. Or Only option is to use threads, one for STDIN and one for STDOUT?

Kindly suggest

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

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

发布评论

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

评论(1

帅冕 2024-11-15 12:39:21

ReadFileEx 允许您设置回调。但请注意,回调 APC 仅在线程进入可警报等待时才会被处理,它们不像 Unix 信号那样异步。

而且回调是一次性的,如果您对未来的数据感兴趣,您的回调处理程序需要再次调用 ReadFileEx

ReadFileEx allows you to set up a callback. But be aware that callback APCs are only processed when your thread enters an alertable wait, they aren't asynchronous like Unix signals.

And the callback is one-shot, your callback handler needs to call ReadFileEx again if you're interested in future data.

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