From 79ee65a6fe949a02cef3a373f21b6b0dd500bb44 Mon Sep 17 00:00:00 2001 From: Matt McKay Date: Thu, 23 Jan 2025 11:47:10 -0600 Subject: [PATCH] Fix Very high CPU usage when piping Insert a small sleep when polling stdin https://github.com/Textualize/toolong/issues/48 --- src/toolong/cli.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/toolong/cli.py b/src/toolong/cli.py index bd35e89..cdb7259 100644 --- a/src/toolong/cli.py +++ b/src/toolong/cli.py @@ -3,6 +3,7 @@ from importlib.metadata import version import os import sys +import time import click @@ -73,4 +74,5 @@ def request_exit(*args) -> None: if line := os.read(sys.stdin.fileno(), 1024 * 64): temp_file.write(line) else: + time.sleep(0.005) # sleep 5 ms to avoid maxing CPU usage break