ond*_*fka 7 memory valgrind memory-leaks dump
当我运行valgrind --leak-check=yes
程序时,会报告几个字节的丢失内存.是否可以查看此内存的内容(即转储存储在其中的数据)?
ppw*_*ppw 10
您可以使用Valgrind的最新版本(3.8.1)执行此操作:
启动可执行文件,在启动时激活gdbserver:
valgrind --vgdb-error=0 ....<your program>
Run Code Online (Sandbox Code Playgroud)
然后在另一个窗口中,将gdb连接到Valgrind(遵循Valgrind给出的指示).然后在相关位置(例如,在main的末尾)放置一个断点并使用gdb
continue
Run Code Online (Sandbox Code Playgroud)
命令直到达到断点.然后从gdb进行泄漏搜索:
monitor leak_check full reachable any
Run Code Online (Sandbox Code Playgroud)
然后列出相关损失记录nr的可到达块的地址
monitor block_list <loss_record_nr>
Run Code Online (Sandbox Code Playgroud)
然后,您可以使用gdb功能检查给定地址的内存.另请注意可能有趣的命令"who_points_at",如果您正在搜索谁保留了指向此内存的指针.
归档时间: |
|
查看次数: |
6038 次 |
最近记录: |