首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DebugDiag调用堆栈不显示调用堆栈中的函数行数。

DebugDiag调用堆栈不显示调用堆栈中的函数行数。
EN

Stack Overflow用户
提问于 2014-09-18 16:46:44
回答 1查看 686关注 0票数 2

我试图隔离Windows上本机代码中的内存泄漏。

我运行了一个测试用例的多次迭代,并将DebugDiag附加到流程中,以收集有关可疑泄漏的信息(通过在PerfMon中多次运行来确认内存泄漏)。

DebugDiag指出了可疑的电话堆栈,如

代码语言:javascript
复制
 Call stack sample 1

 Address   0x0f09e2c0

 Allocation Time   00:22:38 since tracking started 

 Allocation Size   8.54 KBytes 

    Function                                       Source destination
    ntdll!RtlpReAllocateHeap+19c                  ntdll!RtlAllocateHeap 
    ntdll!_except_handler4       
    ntdll!RtlReAllocateHeap+22f                   ntdll!RtlReAllocateHeap 
    sqlncli11!MpReallocZeroMemory+66     
    sqlncli11!SQLReAllocateMemoryEx+22            sqlncli11!MpReallocZeroMemory 
    sqlncli11!AllocPlex+1a4                       sqlncli11!SQLReAllocateMemoryEx 
    sqlncli11!SetADRec+2a4                        sqlncli11!AllocPlex 
    sqlncli11!SQLBindCol+217                      sqlncli11!SetADRec 
    odbc32!SQLBindCol+3c0       
    sscfdm!CSSLockSqlCursor::DoExecuteStmt+11a       
    sscfdm!CSSSqlCursor::Execute+129              sscfdm!CSSLockSqlCursor::DoExecuteStmt 
    sscfdm!CSSSqlObj::Execute+d86                 sscfdm!CSSSqlCursor::Execute 
    sscfom!CSSBusComp::SqlExecute+3a              sscfdm!CSSSqlObj::Execute 
    <<many multiple lines below>>

我已经正确地配置了符号,现在我想知道如何从调用堆栈中提取更多信息。

  1. UMDH日志的diff日志中也有行号(带有文件名)。然而,在DebugDiag报告中,我没有找到这些函数的任何行号。如果函数真的很长,那么就很难仅仅通过查看调用堆栈而没有行号来描述上下文。有没有办法从DebugDiag日志中提取函数(文件)的行号?
  2. 我想知道的另一件事是十六进制偏移在调用堆栈中每个module!function条目中的重要性。
  3. 调用堆栈中的分配大小是多少?是否每个调用堆栈的每个执行都没有释放(因此导致泄漏)分配的内存?
  4. 有关于DebugDiag功能的全面文档的指针吗?
EN

回答 1

Stack Overflow用户

发布于 2015-09-17 22:00:08

UMDH日志的diff日志中也有行号(带有文件名)。但是,在调试报告中,我没有找到这些函数的任何行号。

那就跟UMDH日志一起去吧。

调用堆栈中每个module!function条目的十六进制偏移的重要性。

十六进制偏移量指向编译方法中的特定汇编程序指令。它与源代码中的行号偏移量大致相关,但可能受到编译器优化的严重影响。

调用堆栈中的分配大小是多少?是分配的内存没有被释放..。

..。每次执行这个调用堆栈?

不是的。再次运行相同的方法可能分配不同的大小。考虑一个像AllocateSomeMemory(int bytes)这样的函数,它将取决于分配了多少内存。

指向有关DebugDiag功能的全面文档的任何指针

抱歉,我不能从脑子里说出一个好地方。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25918183

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档