1

特定のpidを使用してPythonでプロセスを開くにはどうすればよいですか。プロセスPIDを設定したいという意味です。

編集:

プロセスで実行されたプロセスのPIDを確認したい(たとえば、クラスPopenのメソッドを使用して)subprocess

4

3 に答える 3

4

PIDはOSによって提供されるため、サブプロセスに特定のPIDを使用することはできません。

サブプロセスのPIDを判別するには、サブプロセスにPIDを要求できます。

import subprocess

dateProc = subprocess.Popen([ 'date' ])
print dateProc.pid

現在のプロセスのPIDを知りたい場合は、を使用してos.getpid()ください。

于 2013-03-27T14:40:09.897 に答える
2

プロセス(Firefoxなど)のプロセスIDを知る必要がある場合は、次のコードが機能します(Linux環境の場合)。コードを実行する前に、環境にpsutilモジュールをインストールする必要があります。また、psutilをインストールするには、「easy_installpsutil」コマンドを使用します。

#!/usr/bin/python

import psutil

process = filter(lambda p: p.name == "firefox", psutil.process_iter())
for i in process:
  print i.name,i.pid
于 2013-03-27T14:59:26.553 に答える
-1

(たとえば)'pythoh'プロセスのPIDを取得するには、少なくとも2行のコードが必要です。

import subprocess
pid = int(subprocess.Popen(['pgrep','python'],stdout=subprocess.PIPE).stdout.readline()[:-1])

その名前のプロセスが実行されていない可能性がある場合は、try-except句を追加します。

'python'プロセスが多数ある場合は、''が返されるまで読み取り行を繰り返します。

sudo apt-getinstallpgrepも必要になる場合があります。

LinuxでPIDを設定することはできません==>プロセスIDを変更する

于 2013-03-27T15:27:49.637 に答える