【发布时间】:2018-12-13 13:16:21
【问题描述】:
我使用proc-open 创建了一个进程,但在Windows 下stream-select 不起作用。我想要实现的是同时读取 stdout 和 stderr,同时写入 stdin 并确保输出可以匹配与输入。 windows 是否有解决此缺陷的解决方法?
【问题讨论】:
-
不幸的是,我认为您唯一能做的就是将管道设置为非阻塞模式并手动检查它们。
-
@netcoder - 我试过这个。
stream_set_blocking返回 false :-( -
stderr 和 stdout 不能设置为非阻塞。你到底想达到什么目的?有一些代码吗?此处可能不需要选择。
-
你能区分打印到
stderr的消息和打印到stdout的消息吗(例如使用某种正则表达式)? -
@galymzhan - 这两个流的不同之处在于它们来自两个不同的文件描述符。此外,有时没有什么可读的。