c++ - C++程序中的虚拟内存大小增加

标签 c++ linux

我有一个运行良好的程序。但在它被杀死 SIGKILL 之后,它可以正常工作 5-6 天。当我发现内存是问题时,我在分配完成的地方进行了严格的释放。

我正在使用 linux top 命令来监控内存使用情况。

截至目前,该程序运行良好。但是,top 命令中的VIRT 虚拟内存属性正在缓慢增加。为什么呢?我在需要的地方重新分配东西。

提前致谢。 :)

最佳答案

如果您在 Linux 上开发,使用 g++ -Wall -g 编译您的应用程序,改进它直到没有给出警告,并使用 gdbvalgrind调试内存泄漏。

您可能对使用 Boehm's conservative garbage collector 感兴趣.

另请阅读 memory fragmentation .

关于c++ - C++程序中的虚拟内存大小增加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13683984/

相关文章:

c++ - 合并两个排序数组的最坏情况下的比较次数?

c++ - 为什么这个 C++11 lambda 的行为不像我预期的那样?

c++ - 对虚拟表的混淆

c++ - 生成随机图

linux - 管道中的多个 grep 在完成后不会终止

linux - 如何使用awk计算输入的平均值?

c++ - VBA Excel DLL 参数问题 - 第 6 个参数

c++ - 如何检测其他程序关闭的 eventfd 文件描述符

php - 某种类型的 perl 文件在执行 PHP exec 函数时没有给出输出

linux - 我可以使用错误的 FCS/CRC 制作以太网帧吗?