XTermで実行しようとしているPythonスクリプトが同時に多数の行を出力するため、最終的にエラーメッセージでスクリプトがクラッシュするという問題があります。
close failed in file object destructor:
sys.excepthook is missing
lost sys.stderr
これが発生しないようにライン出力速度をどのように制限できますか?たとえば、tmuxでこれが可能であることを読みました。これによるとしかし、XTermの同様のオプションが見つかりません。助けが必要ですか?
ベストアンサー1
xtermがデータを表示する速度(疑似ターミナルメインからデータを読み取る)を制限することがどのような影響を与えるのか疑問です。問題はその逆である可能性が高いです(xtermが十分に速く読み取らないため、ptyバッファがいっぱいになり、書き込み試行がブロックまたは返される可能性があります。非ブロックモードを使用すると、要求ごとに少ないデータを書き込みます)。
いつでも出力(および/またはエラー)をパイプしてpv -qL1000
1000B / sに遅くすることができます。
myscript | pv -qL1000
つまり、myscript
stdoutはまだターミナルです。
socat -u 'exec:myscript,commtype=pty,raw' - | pv -qL1000