2018-05-28 19:53:03 +00:00
|
|
|
#include <sys/resource.h>
|
|
|
|
#include "Stopwatch.h"
|
|
|
|
|
2018-08-19 04:25:53 +00:00
|
|
|
StopwatchRUsage::Timestamp StopwatchRUsage::Timestamp::current()
|
2018-05-28 19:53:03 +00:00
|
|
|
{
|
2018-08-19 04:25:53 +00:00
|
|
|
StopwatchRUsage::Timestamp res;
|
2018-05-28 19:53:03 +00:00
|
|
|
|
|
|
|
::rusage rusage;
|
|
|
|
::getrusage(RUSAGE_THREAD, &rusage);
|
|
|
|
|
2018-08-19 04:25:53 +00:00
|
|
|
res.user_ns = rusage.ru_utime.tv_sec * 1000000000UL + rusage.ru_utime.tv_usec * 1000UL;
|
|
|
|
res.sys_ns = rusage.ru_stime.tv_sec * 1000000000UL + rusage.ru_stime.tv_usec * 1000UL;
|
2018-05-28 19:53:03 +00:00
|
|
|
return res;
|
|
|
|
}
|