阻止管道程序交换过时的信息

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了阻止管道程序交换过时的信息相关的知识,希望对你有一定的参考价值。

我有两个管道程序:一个调试日志,它可以非常快速地更新,它将信息发送到处理信息的python程序:

./debugClient | python processor.py

问题是,debugClient程序实时生成输出,处理器程序也需要能够实时处理。只要程序实时发生,它就完全可以并且预计会遗漏一些信息。然而,当两个管道连接在一起时,我似乎只将旧的调试信息发送到processor.py。我理解为什么会出现这种情况,因为这两个程序应该同时运行,而且程序不仅仅涉及STDIN循环。但我对所涉及的缓冲区以及为什么不发送新信息而不是旧信息感到困惑。

答案

通过创建两个线程来完成我想要的,一个只收集信息,另一个处理信息。

以上是关于阻止管道程序交换过时的信息的主要内容,如果未能解决你的问题,请参考以下文章

渲染管道光栅阶段一“总览”

渲染管道光栅阶段一“总览”

为啥 os.path.exists() 会阻止 Windows 命名管道连接?

使用 FFmpeg 通过管道输出视频片段

_BROWSER_ 已阻止在此站点上运行过时的插件“Adobe Flash”

Rail片段缓存如何使您的应用受益,即阻止数据库调用?