windbg排查大內存


現在都是用windbg preview,安裝比較麻煩了,還要配置環境變量,

並且每次分析前要先執行

!analyze - v

 

 

!eeheap -gc

 


!DumpHeap -min 500 000002b25e781000 000002b2da6f8af0

 

①!analyze - v

②kP                                               可以看函數的入參

③!for_each_frame dv / t                            可以看函數中的局部變量

④dc, db                                          產看某一內存中的值    可以直接接變量名 不過可能需要回溯棧

⑤!threads                                         顯示所有線程



⑥~0s , ~1s                                       進入某個線程

⑦!frame ProcessA!FunctionA                        查看某一變量有時需要。 回溯棧

⑧!uniqstack                                       擴展命令顯示當前進程中所有線程的調用堆棧,除開重復的那些。

⑨!teb                                             擴展以的格式化后的形式顯示線程環境塊(TEB)的信息。

⑩s - sa 和 s - su                                     命令搜索未指定的 ASCII 和 Unicode 字符串。這在檢查某段內存是否包含可打印字符時有用。

⑪dds、dps 和 dqs 命令顯示給定范圍內存的內容。     該內存被假定為符號表中的一連串地址。相應的符號也會被顯示出來。命令顯示給定范圍內存的內容, 它們是把內存區域轉儲出來,並把內存中每個元素都視為一個符號對其進行解析,dds是四字節視為一個符號,dqs是每8字節視為一個符號,dps是根據當前處理器架構來選擇最合適的長度

⑫.kframes                                        命令設置堆棧回溯顯示的默認長度。默認20

⑬k, kb, kd, kp, kP, kv(Display Stack Backtrace) k * 命令顯示給定線程的調用堆棧,以及其他相關信息。通常要結合12) 使用否則顯示出來的東西很少

⑭.reload / i xxx.dll                              忽略.pdb 文件版本不匹配的情況。

  

 

-----------

https://www.cnblogs.com/wigis/p/6851918.html

 

https://www.cnblogs.com/lovecindywang/archive/2010/06/18/1760099.html


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com 联系我们: