いくつかのパラメーターを取り、いくつかのタスクを実行する Python 関数を取得しました (theFunc と呼びましょう)。theFunc が実行されている間、内部変数 resultsMessage はどんどん多くの行を取得しており、実行の最後にそれを GUI に表示します。理想的には、theFunc の実行が終了した後ではなく、実行時に GUI 上でresultingMessage を表示および更新し、theFunc を GUI のもので汚染することなく実行したいと考えています (すでに十分に複雑です)。それを行う最良の方法は何ですか?
私が考えることができる2つの可能な方法(どちらもかなり大げさです):
- 2 つのスレッドを用意します。1 つは theFunc を実行し、resultingMessage を変数/ファイルに書き込みます。もう 1 つは、この変数/ファイルをチェックして GUI を更新します。
- resultsMessage に行を追加する代わりに、何らかの「ストリーム」を GUI 要素に追加します。「ストリーム」に行を追加すると、GUI が更新されます。
私はそれを行う従来の方法があるべきだと思います。
環境: CPython 2.7、Win XP、WXPython