惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

宝玉的分享
宝玉的分享
H
Hackread – Cybersecurity News, Data Breaches, AI and More
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
小众软件
小众软件
月光博客
月光博客
D
DataBreaches.Net
L
LangChain Blog
美团技术团队
S
SegmentFault 最新的问题
MyScale Blog
MyScale Blog
大猫的无限游戏
大猫的无限游戏
博客园 - 司徒正美
aimingoo的专栏
aimingoo的专栏
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
H
Help Net Security
阮一峰的网络日志
阮一峰的网络日志
Y
Y Combinator Blog
I
InfoQ
U
Unit 42
Microsoft Azure Blog
Microsoft Azure Blog
J
Java Code Geeks
博客园 - 三生石上(FineUI控件)
腾讯CDC
Martin Fowler
Martin Fowler

博客园 - 生命体验之kevin-Y

如何让Trae IDE调用windbg来分析dump文件 Avalonia.Controls.DataGrid自动合并列 asp.net core如何实现Controller热更新 windbg无法分析dotnetframework3.5的dmp asp.net core通过配置决定AddSingleton的实现类 vscode指定python文件的执行程序 golang离线开发-windows-vscode go语言学习 - caddy配置的一些发现 go语言学习 - caddy添加nacos-gateway 学习jsp-使用IDEA2024社区版 ravendb源代码学习一:服务启动 修整程序集需要 .NET Core 3.0 或更高版本。 打开电脑后一直弹出“交互式检测服务”窗口 Idea2024-java-Maven开发配置 C#获取事件绑定的方法 java.util.zip.DataFormatException: incorrect header check Build Secure Web Services With SOAP Headers and Extensions “System.Net.Http.HttpContent”不包含“ReadAsAsync”的定义 C#入门:如何合理制定方法参数-下 C#入门:如何合理制定方法参数-上 拷贝对象的开源工具类-FastMapper-TinyMapper-Mapster
windbg内存占用分析常用命令
生命体验之kevin-Y · 2026-08-04 · via 博客园 - 生命体验之kevin-Y
命令:!dumpheap -stat
说明:分类别显示内存占用情况

image

上图最后的String占用3.6G,需要分析一下,MT是:7ffdde4bd698 

命令:!dumpheap -mt 7ffdde4bd698 -stat
说明:看看3.6G是由多少个对象持有

image

 200万个对象,那就不能执行:!dumpheap -mt 7ffdde4bd698 ,需要指定最小的尺寸,看看有没有大的

命令:!dumpheap -mt 7ffdde4bd698 -min 100000
说明:列出大于100K的对象

image

 有9708个,占用3.4G,就是大部分占用在这个区间。而最后一个占用695M的文本。看看谁持有

命令:!gcroot 015a39d41020
说明:检查垃圾回收的情况。谁持有该对象,如果没有持有者,那应该过一段时间会被回收。

image

这个提示就很足了,具体程序位置也给出了。不过我们可能还是好奇,能否看看这String是什么内容,如果知道就更容易定位问题了。

命令:!dumpobj 015a39d41020
说明:查看地址内容

image

 String提示:<String is invalid or too large to print>,没有显示我们期待的字符串。我们需要使用另一个命令。_firstChar提示了偏移量是c,需要地址加 c 或 0xc (16进制)

命令:du 015a39d41020+0xc L100
说明:取某个地址上长度100字节并转为字符

image

好了,原来是数据库连不上,有多少行数据就会写入多少条错误,难怪这么大的文本。