0
次のコードはWindowsプラットフォーム(pythonバージョン2.7.2)で[Errno 10] No child processes
と返されます。Python os.waitpid throw `[Errno 10]子プロセスがありません。
import subprocess import os pid = subprocess.Popen(["cmd"]).pid os.waitpid(pid, 0) print 'process %d finished' % pid
同じコードがLinuxでうまく機能します。
はい、あなたのコードが動作します。しかし、私は自分のコードで何が間違っているのか分かりません。あなたのマシンに私の問題を再現できますか? – fwu
私はWindowsがインストールされていないので問題になります。しかし、私はおそらく、Windowsはpidをすぐに割り当てず、割り当ての前にそれにアクセスしようとしていると思います。 – mrbox
最後に私は理由を考え出した。 os.waitpidプロセスハンドルをパラメータとして使用します。プロセスIDは使用しません。これは本当に混乱しています。とにかくたくさんありがとう。 – fwu