|
|
1
14
一般来说,标准C运行时库(或多或少代表每个系统上的每个程序运行;-)检测stdout是否是终端;如果没有,它会缓冲输出(与未缓冲的输出相比,这可能是一个巨大的效率优势)。
如果你控制着正在编写的程序,你可以(正如另一个答案所建议的那样)连续刷新stdout,或者(如果可行的话,可以更优雅地)尝试强制stdout无缓冲,例如通过使用以下命令运行Python
如果你不能或不想触摸正在编写的程序,
|
|
|
2
1
这是正确的,适用于Windows和Linux(可能还有其他系统)
|
|
|
jjmerelo · 使用Proc::Async从绑定管道读取 8 年前 |
|
|
Vingtoft · 使用管道的Python多进程无阻塞内部通信 8 年前 |
|
|
marc · grep pipe sed命令 8 年前 |
|
|
Wolfat · 无法从C中的管道执行读取? 8 年前 |
|
|
E.S. · Java-重定向进程输入/输出(管道)暂停[重复] 8 年前 |
|
|
Arka Pal · 关闭管道中未使用的端部 8 年前 |