diff options
Diffstat (limited to 'rts/win32')
-rw-r--r-- | rts/win32/GetTime.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/rts/win32/GetTime.c b/rts/win32/GetTime.c index 61a978e2aa..e0f5e7d406 100644 --- a/rts/win32/GetTime.c +++ b/rts/win32/GetTime.c @@ -35,6 +35,20 @@ getProcessTimes(Time *user, Time *elapsed) } Time +getCurrentThreadCPUTime(void) +{ + FILETIME creationTime, exitTime, userTime, kernelTime = {0,0}; + + if (!GetThreadTimes(GetCurrentThread(), &creationTime, + &exitTime, &kernelTime, &userTime)) { + sysErrorBelch("getCurrentThreadCPUTime: Win32 error %lu", GetLastError()); + return 0; + } + + return fileTimeToRtsTime(userTime); +} + +Time getProcessCPUTime(void) { FILETIME creationTime, exitTime, userTime, kernelTime = {0,0}; |