测量子进程的 CPU 使用率但不包括孙进程
这可能是个显而易见的事情,但我就是搞不明白该怎么做。
假设我这样启动了一个进程:
popen = subprocess.Popen(args, executable=executable,
bufsize=-1,
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
close_fds=True,
env={})
popen.wait()
有没有办法让我只测量这个子进程的CPU使用率,而不包括它的子进程和孙子进程呢?
resource.getrusage(resource.RUSAGE_CHILDREN)
这样做会让我得到所有的子进程和孙子进程。
1 个回答
2
你可以使用 psutil 这个工具。
import psutil
popen = ...
p = psutil.Process(popen.pid)
print p.get_cpu_times()