和.net内存调试相关的Windbg命令
首先.load sosex.dll加载ex调试扩展dll
1、!gcgen [obj地址]
显示对象属于gc代数
2、!dumpgen [0/1/2]
dump出0/1/2代所用对象
3、strings
在托管堆搜索字符串,可指定匹配字符串如:!strings -m:Debug
-g:指定代数,-n:最小大小,-x:最大大小
4、!dumpheap
分析托管堆对象分配汇总信息
5、!eeheap -gc/-loader
查看gc堆/loader堆信息
6、!dumpobj/!dumpvc
查看对象/值类型
7、!fq
查看终结队列
FinalizeQueue:实现Dispose且有Root
F-ReachableQueue:实现Dispose没有根会被移到这里,终结线程对其执行Dispose操作,最后移除,在下一次GC之后被释放。
8、!objsize
输出所有对象大小
9、!VerifyHeap
校验堆破坏情况
时间: 2024-10-27 05:41:06