STINNER Victor added the comment:

I guess that you mean "Popen" when you write "Pipe"?

Even if Popen has a high-level wait() method implemented with os.waitpid(), you 
are free to use a low-level function using the pid attribute.

proc = subprocess.Popen(...)
os.wait4(proc.pid, ...)

> have an new data member, rusage, make the resource usage available to the 
> caller.

I don't know how to get the rusage of a specific child process, but you can use 
resource.getrusage(resource.RUSAGE_CHILDREN) which gives the usage of *all* 
child processes. Again, you have the pid, and so you are free to use any 
function to retrieve the resource usage of the child process. See also this 
project which can help you:
https://pypi.python.org/pypi/psutil

I don't think that the subprocess should be modified to your use case, it's 
already possible to implement you use cases without modify it. Python is a 
(very) portable language, and it's very hard to provide the same API for such 
low-level metrics (rusage). I don't think that Windows provides exactly the 
same data for example.

You can build your own module on top of subprocess and other modules like 
psutil.

----------
nosy: +haypo

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue21504>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to