首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux getrusage() maxrss最大驻留集大小不随分配而增加(C++)

Linux getrusage() maxrss最大驻留集大小不随分配而增加(C++)
EN

Stack Overflow用户
提问于 2018-07-12 01:41:34
回答 0查看 836关注 0票数 3

我正在尝试使用getrusage(.)和最大驻留集大小(maxrss)来检查内存泄漏。但是,当我故意尝试创建泄漏时,maxrss不会改变。也许我对maxrss的理解还不够深入。代码如下:

代码语言:javascript
复制
#include <iostream>
#include <sys/time.h>
#include <sys/resource.h>
using namespace std;
int main() {
  struct rusage r_usage;
  getrusage(RUSAGE_SELF, &r_usage);
  cout << r_usage.ru_maxrss << "kb\n";
  cout << "Allocating...\n";
  int a = 100000; // have tried range of numbers
  int* memleaktest = new int[a]; // class member
  if(!memleaktest)
    cout << "Allocation failed";
  getrusage(RUSAGE_SELF, &r_usage);
  cout << "after allocation " << r_usage.ru_maxrss << "kb\n";
  return 0;
}

在分配(~15000kb)后,我得到了完全相同的值。在Ubuntu x86上。

EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51291429

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档