1

我的系统上运行了一个守护进程(C 程序)。当守护程序启动时,许多其他库会附加到该守护程序。

还有一个用户进程在运行时使用此守护进程进行操作。

问题是在用户进程完成其操作后,当我看到该守护程序的 top 命令的输出时,我看到“RES”内存以 MB 为单位增加。%mem 降低到我运行该过程之前的先前水平。

  PID USER      PR  NI  VIRT  RES  SHR S   %CPU %MEM    TIME+  COMMAND          
 7456 root      20   0 73946  34m 3543 S      0  0.3  14:28.96 test_daemon            

RES 值的增加是否表明内存泄漏?

4

1 回答 1

1

不一定,也可能没有。但是,确保您的代码没有内存泄漏的唯一方法是使用 Valgrind ( http://valgrind.org/ ) 之类的东西运行它。当您可以使用实际的内存调试器并确定时,为什么还要使用 top 呢?

于 2013-11-07T06:32:15.733 回答