diff options
Diffstat (limited to 'test/src/mbgl/test/getrss.hpp')
-rw-r--r-- | test/src/mbgl/test/getrss.hpp | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/test/src/mbgl/test/getrss.hpp b/test/src/mbgl/test/getrss.hpp new file mode 100644 index 0000000000..a4420c4b5f --- /dev/null +++ b/test/src/mbgl/test/getrss.hpp @@ -0,0 +1,45 @@ +#if defined(_WIN32) +#include <windows.h> +#include <psapi.h> + +#elif defined(__unix__) || defined(__unix) || defined(unix) || (defined(__APPLE__) && defined(__MACH__)) +#include <unistd.h> +#include <sys/resource.h> + +#if defined(__APPLE__) && defined(__MACH__) +#include <mach/mach.h> +#include <mach/message.h> // for mach_port_t +#include <mach/task_info.h> + +#elif (defined(_AIX) || defined(__TOS__AIX__)) || (defined(__sun__) || defined(__sun) || defined(sun) && (defined(__SVR4) || defined(__svr4__))) +#include <fcntl.h> +#include <procfs.h> + +#elif defined(__linux__) || defined(__linux) || defined(linux) || defined(__gnu_linux__) +#include <stdio.h> + +#endif + +#else +#error "Cannot define getPeakRSS( ) or getCurrentRSS( ) for an unknown OS." +#endif + +namespace mbgl { +namespace test { + + +/** + * Returns the peak (maximum so far) resident set size (physical + * memory use) measured in bytes, or zero if the value cannot be + * determined on this OS. + */ +size_t getPeakRSS(); + +/** + * Returns the current resident set size (physical memory use) measured + * in bytes, or zero if the value cannot be determined on this OS. + */ +size_t getCurrentRSS(); + +} +} |