0
のPIDを取得し、このような何か:私は、完成QProcessのPIDを取得しようとしている終えQProcess
proc = QProcess.start()
proc.finished.connect(self.finished)
def finished(self):
self.sender().pid()
QProcess.pidは()プロセスがしかしclosedの場合は0を返し、QProcessます。 finished()はプロセスが完了した後にのみ呼び出すので、私は0を得ることができます...どうすればこの問題を回避できますか?私は完了時にPIDを使用する必要がない方法を考えようとしていますが、現時点では私がしなければならないことです。
私はproc.aboutToClose.connect(self.finished)
を試しましたが、これは何も返されなかったので、それは信号ではないようですが、それがうまくいくならば良い解決策になります。
は '開始()'信号を使用しますpidを取得する。 – ekhumoro
ありがとうございますが、私はプロセスの最後にそれを取得しようとしています。私がやっていることは、プロセスが完了したときに "完了"と言うQTableViewアイテムを更新することです。プロセスが実行されている間などにPIDを使用してプロセスが完了したことを知ります。一度に) – Spencer
それは意味をなさない。定義すると、完成したプロセスにはPIDがありません。 'started()'シグナルを使用してプロセスオブジェクトのpidをキャッシュします(例えば、 'proc.setObjectName(str(proc.pid()))')。 – ekhumoro