On 19 juin, 16:40, Thomas Robitaille <thomas.robitai...@gmail.com> wrote: > Hi, > > I'm making use of the multiprocessing module, and I was wondering if there > is an easy way to find out how long a given process has been running for. > For example, if I do > > import multiprocessing as mp > import time > > def time_waster(): > time.sleep(1000) > > p = mp.Process(target=time_waster) > > p.start() > > Is there a way that I can then find how long p has been running for? I > figured I can use p.pid to get the PID of the process, but I'm not sure > where to go from there. Is there an easy way to do this?
Something like : import multiprocessing as mp import time q_out = mp.Queue() def time_waster(qo): time.sleep(5) qo.put('stopped at ' + time.ctime(time.time())) def main(): p = mp.Process(target=time_waster, args=(q_out,)) print "start at: " + time.ctime(time.time()) p.start() p.join() print q_out.get() if __name__ == "__main__": main() The Queue (the one from multiprocessing ! don't mix with the Queue module) is used as a safe exchange object between the parent and all the child. Olivier -- http://mail.python.org/mailman/listinfo/python-list