两个管道进程在几次后执行速度变慢

two piped process slowdown execution after few time

我有两个管道进程:

gnome-terminal -e ./script1 | ./script2.py

我用于 "real time" 过程(我的 script2.py 通过串行端口控制电机)......它工作正常但在短时间后它变慢了很多......

有没有什么方法可以 "flush" 或跳过从管道传递的一些数据以使我的 "realtime" 尽可能短? (并让我的电机对来自我的脚本的任何变化尽快做出反应1)

非常感谢!

我觉得你很困惑。上面的命令将在其中启动 gnome-terminal 和 运行 ./script1 的新实例,并且还将在原始终端内启动 运行 ./script2.py 。此外,./script2.py 的标准输入将提供从 gnome-terminal -e ./script1 命令输出收集的所有数据,而 而不是 ./script1。所以你给了 ./script2.py 错误的数据。事实上,gnome-terminal 通常不会产生任何输出(实际上,它可能会在其 stderr 中打印一些内容),因此您没有提供 ./script2.py 数据。