bool GetPhysicalMemoryLimit(size_t *val) { char *mem_limit_filename = nullptr; bool result = false; if (m_memory_cgroup_path == nullptr) return result; size_t len = strlen(m_memory_cgroup_path); len += strlen(MEM_LIMIT_FILENAME); mem_limit_filename = (char*)malloc(len+1); if (mem_limit_filename == nullptr) return result; strcpy(mem_limit_filename, m_memory_cgroup_path); strcat(mem_limit_filename, MEM_LIMIT_FILENAME); result = ReadMemoryValueFromFile(mem_limit_filename, val); free(mem_limit_filename); return result; }
static bool GetPhysicalMemoryUsage(size_t *val) { char *mem_usage_filename = nullptr; bool result = false; if (s_memory_cgroup_path == nullptr) return result; size_t len = strlen(s_memory_cgroup_path); len += strlen(MEM_USAGE_FILENAME); mem_usage_filename = (char*)malloc(len+1); if (mem_usage_filename == nullptr) return result; strcpy(mem_usage_filename, s_memory_cgroup_path); strcat(mem_usage_filename, MEM_USAGE_FILENAME); result = ReadMemoryValueFromFile(mem_usage_filename, val); free(mem_usage_filename); return result; }