如何因为损坏而使用gdb免费观看固定内存

时间:2013-03-07 17:53:21

标签: gdb watchpoint

我有一个包含接口详细信息的指针数组。 例如

tIfInfoStruct      *gapIfTable[16];
在创建接口时已为指针分配了

内存。 例如

gapIfTable[14] = 0x39cc345.

经过一系列操作后,gapIfTable[14]的值变为NULL(0x0)。我想看一下,程序的哪一部分正在释放内存。 我是否能够使用

跟踪gapIfTable[14]
gdb> watch *0x39cc345

当上面的内存地址变为NULL时,我希望我的程序在gdb上停止,这样我就可以在Gdb中找到后面的跟踪来查找罪魁祸首。我正在运行一个多线程程序。

请更正如果我的理解是错误的。 如果我错了,请帮我解决一些问题。

1 个答案:

答案 0 :(得分:0)

  

GDB>观看* 0x39cc345

这会在0x39cc345位置监视内存,而位于&gapIfTable[14]的{​​{1}}内存

所以你可能想要使用NULL