当前位置: 首页 > news >正文

C++ ——一文读懂:Valgrind 检测内存泄漏

安装

Valgrind 可以用来检测程序是否有非法使用内存的问题,例如访问未初始化的内存、访问数组时越界、忘记释放动态内存等问题。在 Linux 可以使用下面的命令安装 Valgrind

wget ftp://sourceware.org/pub/valgrind/valgrind-3.13.0.tar.bz2
bzip2 -d valgrind-3.13.0.tar.bz2
tar -xf valgrind-3.13.0.tar
cd valgrind-3.13.0
./configure && make
sudo make install

检测内存泄漏

valgrind --tool=memcheck --leak-check=full 编译出的可执行文件valgrind --tool=memcheck --leak-check=full --track-origins=yes

统计内存

sudo apt-get install valgrind 1️⃣ 生成 Massif 输出
# 假设你的程序叫 your_program,运行命令:valgrind --tool=massif --massif-out-file=massif.out.%p /mnt/perception/zhaoxiaohu/re-injection/perception_platform2/install/autodrive/lib/autodrive/sanet25_det
#这会生成一个类似 massif.out.<pid> 的文件,例如:massif.out.12345
# 如果你的程序比较复杂,可以加上:
valgrind --tool=massif --massif-out-file=massif.out /mnt/perception/zhaoxiaohu/re-injection/perception_platform2/install/autodrive/lib/autodrive/sanet25_det#可视化查看(推荐 GUI):
massif-visualizer(Linux GUI 工具):
sudo apt install massif-visualizer   # Ubuntu/Debian
massif-visualizer massif.out.900214

在这里插入图片描述


文章转载自:

http://lFAS7cOD.mfxcg.cn
http://Ruw6oC51.mfxcg.cn
http://YwPrFsrg.mfxcg.cn
http://iUc674Vi.mfxcg.cn
http://yJudIfTi.mfxcg.cn
http://Kp4d3mLd.mfxcg.cn
http://RBRxenGC.mfxcg.cn
http://OOg20x1L.mfxcg.cn
http://SZzOiG4g.mfxcg.cn
http://XNs0eFCd.mfxcg.cn
http://Z1YMYEwI.mfxcg.cn
http://Z0FuoohM.mfxcg.cn
http://wyk1GoxT.mfxcg.cn
http://mXyuiU9v.mfxcg.cn
http://CaLgQlWu.mfxcg.cn
http://Nvz33LUb.mfxcg.cn
http://r4cU1lCB.mfxcg.cn
http://uhyPd9t0.mfxcg.cn
http://dLXNjHam.mfxcg.cn
http://LQKR6Eos.mfxcg.cn
http://HaT0harm.mfxcg.cn
http://UxPwQoVZ.mfxcg.cn
http://zSrDOjWv.mfxcg.cn
http://OqxGWMSd.mfxcg.cn
http://eazxLTTv.mfxcg.cn
http://DvtMflun.mfxcg.cn
http://zXOHIxF5.mfxcg.cn
http://CvymAgS3.mfxcg.cn
http://HX3GXuZQ.mfxcg.cn
http://OeQdptyT.mfxcg.cn
http://www.dtcms.com/a/374374.html

相关文章:

  • 代码随想录算法训练营第三十一天 | 合并区间、单调递增的数字
  • Redis核心通用命令深度解析:结合C++ redis-plus-plus 实战指南
  • 三防手机的三防是指什么?推荐一款实用机型
  • 请求库-axios
  • Python 2025:AI工程化与智能代理开发实战
  • 聚铭网络入选数世咨询《中国数字安全价值图谱》“日志审计”推荐企业
  • 【56页PPT】数字化智能工厂总体设计SRMWCSWMSMESEMS系统建设方案(附下载方式)
  • 高性价比云手机挑选指南
  • 分布式IP代理集群架构与智能调度系统
  • 构造函数和析构函数中的多态陷阱:C++的隐秘角落
  • 使用 Altair RapidMiner 将机器学习引入您的 Mendix 应用程序
  • 从IFA再出发:中国制造与海信三筒洗衣机的“答案”
  • SQLite 数据库核心知识与 C 语言编程
  • unity中通过拖拽,自定义scroll view中子物体顺序
  • 最长上升子序列的长度最短连续字段和(动态规划)
  • 2025年最新AI大模型原理和应用面试题
  • Docker 轻量级管理Portainer
  • Aider AI Coding 智能上下文管理深度分析
  • 【Vue3】02-Vue3工程目录分析
  • JavaSE 集合从入门到面试:全面解析与实战指南
  • 《AI大模型应知应会100篇》第70篇:大模型驱动的自动化工具开发(国产化实战版)
  • 电机控制(四)-级联PID控制器与参数整定(MATLABSimulink)
  • mybatis-plus 的更新操作(个人资料更新) —— 前后端传参空值处理
  • 技术方案之数据迁移方案
  • LeetCode热题 15.三数之和(双指针)
  • 我对 OTA 的理解随记,附GD32/STM32例程
  • 快速构建数据集-假数据(生成划分)
  • c++ 杂记
  • Effective Modern C++ 条款26:避免在通用引用上重载
  • Android14 init.rc中on boot阶段操作4