Python - 为持续运行的线程而不是整个程序抑制控制台输出

时间:2015-04-01 04:15:00

标签: python multithreading console

BLUF:有没有办法只为单个线程抑制控制台输出?

我有一个后台线程进行系统检查,其中包括对各种事物的一堆ping。这些ping检查需要一段时间,然后将结果刷新到控制台。我根本不希望它们显示,所以我发现你可以将stdout设置为devnull。

问题是系统检查是暂时的True循环(循环之间有60秒的休眠)并且检查本身占用60秒的很大一部分所以我担心在这些功能期间抑制控制台输出将导致整个程序的总运行时间的良好百分比没有控制台输出 - 我可能稍后想要从主线程看到的控制台输出。

1 个答案:

答案 0 :(得分:0)

您可以将sys.stdout替换为基于线程过滤输出的自定义类。