1

私が取り組んでいるこのアプリケーション (GUI ベース) には、十数個のモジュールがあります。アプリケーションを実行して使用すると、この特定のアクション (ラベルをクリックする) があり、標準出力に大量の空の印刷物が表示されるため、アプリケーションのパフォーマンスが低下していると思われます。問題は、どのprintステートメントがこれを引き起こしているのかを正確に見つけることができないことです。

私がまだ試したこと:

  • マルチバッファ検索
  • 実行されることがわかっている印刷ステートメントをコメントし、ほぼ100%実行されないと確信しているステートメントを除外しました。限目。

私が試していないこと:

  • pdb(時間がかかる)

この印刷ステートメントを追い詰めるための簡単なハック(あまり醜くない)はありますか?

4

2 に答える 2

6

メソッドが呼び出されsys.stdoutたときにトレースバックを吐き出すファイルのようなものに置き換えます。write()

于 2013-06-15T10:13:43.027 に答える
0

印刷ルーチンを呼び出す場所はどこでも、印刷が開始された場所を識別するために、印刷出力 (モジュール名 + 行番号) に小さな固有のヘッダーを追加します。

于 2013-06-15T10:12:50.303 に答える