因为之前所在公司,写的代码都不允许使用动态分配内存,直接使用静态预先分配方式,所以根本不存在内存泄露的问题。现在新公司里面框架很多都使用动态分配内存方式,所以便会遇到内存泄露问题,通常都使用valgrind开源工具进行内存泄露方式的检查。
valgrind使用方式比较简单,写一个最简单的使用方法:
执行:
1.valgrind -v --log-file=y.txt --leak-check=full ./程序名 (valgrind方式启动程序)
2.发送请求【一定要!】
3.杀掉服务(杀掉前,貌似没有检查结果输出)
【结果保存在y.txt中; 查看LEAK SUMMARY为内存泄露】
打开日志就可以看到具体的内存泄露结论。例如: