我有两个管道程序:一个快速更新的调试日志,它将信息发送到处理信息的python程序:
./debugClient | python processor.py
问题是,debugClient程序实时生成输出,处理器程序也需要能够实时处理。这是完全可以的,而且只要程序实时运行,就会丢失一些信息。然而,当这两者通过管道连接在一起时,我似乎只能将旧的调试信息发送到processor.py。我理解为什么会出现这种情况,因为这两个程序应该同时运行,并且该程序涉及的不仅仅是一个STDIN循环。但我对涉及的缓冲区感到困惑,以及为什么没有发送新信息而不是旧信息
通过创建两个线程实现了我想要的,一个只收集信息,另一个处理信息
相关问题 更多 >
编程相关推荐