30
Pythonのsubprocess.PIPEでの非ブロッキング読み取り
サブプロセスモジュールを使用してサブプロセスを開始し、その出力ストリーム(stdout)に接続しています。stdoutで非ブロッキング読み取りを実行できるようにしたい。.readlineを非ブロック化する方法、または呼び出す前にストリームにデータがあるかどうかを確認する方法はあり.readlineますか?これを移植可能にするか、少なくともWindowsとLinuxで動作させたいです。 ここに私が今それを行う方法があります(利用.readline可能なデータがない場合はブロックしています): p = subprocess.Popen('myprogram.exe', stdout = subprocess.PIPE) output_str = p.stdout.readline()