我在MAC上运行C ++代码时占用RAM /硬盘空间?

时间:2016-11-10 09:52:21

标签: c++ macos c++11 memory-leaks valgrind

我编译了一个C ++代码(C ++ 11,带有STL库)并在我的MAC上运行它。随着模拟的进行,我注意到一段时间后,我硬盘上的空间开始被占用,如果我不停止代码,它可以冻结我的机器。我尝试valgrind(强制要求较小的问题)找到任何内存泄漏,但我不知道。不幸的是,实际问题的规模太大,以至于它不会出现问题。可以在其上运行valgrind

可能是什么问题?这是潜在的内存泄漏吗? PS:如果有帮助,我使用OS X 10.9.5并使用g++命令编译我的CPP代码。

编辑:检查Activity Monitor,内存似乎不会在我的MAC上不断增加。这使它更加奇特。

edit2:我能够在我的代码中找到问题所在。 std::vector被错误地通过push_back电话不断延长。这就是valgrind没有报告内存泄漏的原因。有趣的观察:在OSX上,随着程序规模变大,实际的RAM没有用完。 OSX决定使用硬盘空间。在Linux(CentOS)上,RAM一直被代码占用,直到OS杀死了这份工作。

0 个答案:

没有答案