#include #include #include #include #include #define DO_MEMORY_INFO 1 #if DO_MEMORY_INFO #include static int get_memory_info(PROCESS_MEMORY_COUNTERS *meminfo) { int r; r = GetProcessMemoryInfo(GetCurrentProcess(), meminfo, sizeof *meminfo); if (r == 0) return GetLastError(); return 0; } #endif int toku_os_get_rss(int64_t *rss) { int r; #if DO_MEMORY_INFO PROCESS_MEMORY_COUNTERS meminfo; r = get_memory_info(&meminfo); if (r == 0) *rss = meminfo.WorkingSetSize; #else r = 0; *rss = 0; #endif return r; } int toku_os_get_max_rss(int64_t *maxrss) { int r; #if DO_MEMORY_INFO PROCESS_MEMORY_COUNTERS meminfo; r = get_memory_info(&meminfo); if (r == 0) *maxrss = meminfo.PeakWorkingSetSize; #else r = 0; *maxrss = 0; #endif return r; }