gpt4 book ai didi

Python 与子进程通信

转载 作者:行者123 更新时间:2023-12-05 05:28:46 25 4
gpt4 key购买 nike

我有一个不断产生数据的子进程,但我对大部分数据都不感兴趣。但是偶尔,我需要在随机时间获取输出样本——问题是我需要阅读它在明确界定的边界。例如,假设进程每秒产生 100 字节的常量,有用信息以 100 字节的 block 形式出现。它运行 4 秒后,我要求查看 100 字节的输出,然后我会对 400-499 字节感兴趣。但是如果我在4.1秒询问,我不想截获并得到410-509字节,我需要观望500-599字节。否则,该进程应该愉快地将其输出流式传输到 /dev/null 并且我不想阻止输出流。我的 friend fred 也可能要求 100 个字节,比如 4.6 秒,所以我还需要开球,让多个消费者可以阅读这些数据。

这种东西有现成的设计模式吗?如何用python子进程实现,并保证与子进程的通信是非阻塞的?

最佳答案

嗯,我是 python 的新手,但似乎 proc.communicate 或 proc.stdout.readline/readlines 等到进程完成。

据我所知,你可以实现一个循环日志记录并将输出重定向到一个文件,然后使用子进程你可以触发 tailf -n XX 日志文件,在一个循环中直到程序结束,并在有请求时打印输出从用户端。

关于Python 与子进程通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7315212/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com