【发布时间】:2020-07-30 01:21:34
【问题描述】:
我想获得一些关于我的 C++ 程序的内存使用情况的信息。我这样做的方法是访问/proc/self/stat 并打印虚拟和驻留集大小。
你可以找到一个例子here。
这是一个好方法吗?我访问的信息有多准确*?
有人可以推荐一种更好的方法来以编程方式测量内存使用情况吗?
*问,因为我得到了意想不到的,突然的内存使用跳跃。我的期望是信息完全准确。
操作系统:我在一个基于 RHEL 的 docker 容器中运行。
附加信息:如果我用docker run -m 限制容器的内存使用,则打印的内存大于我设置的限制。
【问题讨论】:
-
这非常依赖于操作系统,所以请edit您的问题明确说明(例如通过将其添加为标签)。
-
@usr 确实如此。那里的解决方案几乎就是我使用的。但是当我使用这种方法时,我得到了奇怪的结果。这就是为什么我一直在寻找更好的方法来做到这一点