我有一个内部启动并行运行的多个线程的函数。线程会打印一些东西,我想从外部函数捕获此输出。我尝试了下一个代码来捕获输出:
import sys, io
stdout = sys.stdout
sys.stdout = io.StringIO()
threads_conn(connect, devices) #- here many threads starts with many print inside
output = sys.stdout.getvalue()
sys.stdout = stdout
print(output)
此代码有效。但是问题在于仅在所有广告完成后才输出输出。所以我冻结了。完成所有线程后,将输出整个输出。我想要的-在内部生成后立即输出-换句话说,是实时的。现在,我可以一次打印出整个缓冲区。 如何获得所有线程的实时输出?
相关分类