「マルチスレッド処理で外部プロセスをバックグラウンド実行する」では外部プロセスをバックグラウンド実行しながら出力を端末上にそのまま表示していたが、ここではPyGTKを用いてGUIの複数行テキスト入力欄(テキストビュー)に表示する。 問題とその解決法 外部プロセスの出力をテキストビューに表示する上での問題としては 外部プロセスが終了するまでGUIのウィンドウが固まる 出力の一番最後の部分を常に表示するようにしたい ということがあげられるが、PyGTKのFAQに参考になるページが見つかり、同じ要領でsubprocessを使用して書いたところ、意図した通りに動作するものが作れた。 メモとしては 外部プロセスの実行部分は別のスレッドで実行 gtk.main_quit()より先に、関数gtk.gdk.threads_init()を呼ぶ 外部プロセスを実行するスレッド側において、描画を伴う処理*1があ
![Pythonで外部プロセスをバックグラウンド実行しつつ、出力をGTK+のテキストビューにリアルタイム表示する - 試験運用中なLinux備忘録・旧記事](https://cdn-ak-scissors.b.st-hatena.com/image/square/de81fc9869b9d872bddf2a70b0e81c8fc7e8ab0b/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fk%2Fkakurasan%2F20080723%2F20080723215700.png)