I'm developing a long-running multi-threaded Python application for Windows, and I want the process to know the CPU time that each of its threads has taken. I can get the overall times for the entire process with os.times() but I need to know the per-thread times.
I know that there are external tools such as the Sysinternals Process Explorer, but my program itself needs to have this information. If I were on Linux, I look in the /proc
filesystem, as described here. If I were writing C code, I'd use the GetThreadTimes
call, as described here.
So how can I accomplish this on Windows using Python?