mirror of
https://github.com/wolfpld/tracy
synced 2025-04-29 04:23:51 +00:00
Implement reading sys time on BSD.
This commit is contained in:
parent
c7a22cc1ff
commit
37eef59d54
@ -10,6 +10,9 @@
|
|||||||
# elif defined __APPLE__
|
# elif defined __APPLE__
|
||||||
# include <mach/mach_host.h>
|
# include <mach/mach_host.h>
|
||||||
# include <mach/host_info.h>
|
# include <mach/host_info.h>
|
||||||
|
# elif defined BSD
|
||||||
|
# include <sys/types.h>
|
||||||
|
# include <sys/sysctl.h>
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
namespace tracy
|
namespace tracy
|
||||||
@ -61,6 +64,17 @@ void SysTime::ReadTimes()
|
|||||||
idle = info.cpu_ticks[CPU_STATE_IDLE];
|
idle = info.cpu_ticks[CPU_STATE_IDLE];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# elif defined BSD
|
||||||
|
|
||||||
|
void SysTime::ReadTimes()
|
||||||
|
{
|
||||||
|
u_long data[5];
|
||||||
|
size_t sz = sizeof( data );
|
||||||
|
sysctlbyname( "kern.cp_time", &data, &sz, nullptr, 0 );
|
||||||
|
used = data[0] + data[1] + data[2] + data[3];
|
||||||
|
idle = data[4];
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
SysTime::SysTime()
|
SysTime::SysTime()
|
||||||
@ -80,7 +94,7 @@ float SysTime::Get()
|
|||||||
|
|
||||||
#if defined _WIN32 || defined __CYGWIN__
|
#if defined _WIN32 || defined __CYGWIN__
|
||||||
return diffUsed == 0 ? -1 : ( diffUsed - diffIdle ) * 100.f / diffUsed;
|
return diffUsed == 0 ? -1 : ( diffUsed - diffIdle ) * 100.f / diffUsed;
|
||||||
#elif defined __linux__ || defined __APPLE__
|
#elif defined __linux__ || defined __APPLE__ || defined BSD
|
||||||
const auto total = diffUsed + diffIdle;
|
const auto total = diffUsed + diffIdle;
|
||||||
return total == 0 ? -1 : diffUsed * 100.f / total;
|
return total == 0 ? -1 : diffUsed * 100.f / total;
|
||||||
#endif
|
#endif
|
||||||
|
@ -3,6 +3,12 @@
|
|||||||
|
|
||||||
#if defined _WIN32 || defined __CYGWIN__ || defined __linux__ || defined __APPLE__
|
#if defined _WIN32 || defined __CYGWIN__ || defined __linux__ || defined __APPLE__
|
||||||
# define TRACY_HAS_SYSTIME
|
# define TRACY_HAS_SYSTIME
|
||||||
|
#else
|
||||||
|
# include <sys/param.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef BSD
|
||||||
|
# define TRACY_HAS_SYSTIME
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef TRACY_HAS_SYSTIME
|
#ifdef TRACY_HAS_SYSTIME
|
||||||
|
Loading…
x
Reference in New Issue
Block a user