当前位置: 首页 > news >正文

学习使用dotnet-dump工具分析.net内存转储文件(3)

  dotnet-dump工具中使用clrthreads、threads、dso命令可以查看不同线程的堆栈内托管对象,其中clrthreads命令支持查看正在运行的托管线程列表,threads命令支持切换线程,dso命令(dumpstackobjects命令的缩写)能够显示当前线程的堆栈边界内所有托管对象。
  以前一篇文章中的dump文件为例,输入clrthreads命令,可以显示线程总数量、后台线程数量、死线程数量及线程明细。输入dso命令,可以看到当前线程的OSID及堆栈中的对象信息(对象地址、对象类型等)。输入“threads -t osid值“命令切换线程(也可以输入“threads DBG值”切换 ),然后输入dso查看切换后的堆栈内对象信息,对于感兴趣的对象,可以输入“dumpobj 对象地址”查看对象详细信息。
  clrthread命令返回的结果中的线程状态列(state)是一串数字,可以使用“threadstate 状态值”命令查看状态含义。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
  同样配合使用clrthreads、threads、clrstack可以查看指定线程的托管代码的堆栈跟踪。如下图所示,切换到线程0,然后查看堆栈,接着切换到线程0x4970查看堆栈。
在这里插入图片描述
在这里插入图片描述
  以dump开头的命令有不少,之前学习过dumpheap、dumpobj、dso(dumpstackobjects),除此之外MSDN中介绍使用dumpassembly命令显示有关程序集的详细信息,但实际使用时如果没有带参数,则直接提示“Invalid Assembly”,可能是程序集地址无效,也可能是程序集未加载或已卸载,此时可以使用dumpdomain命令列出所有 AppDomain 的程序集的信息,其中就有程序集的地址信息,再使用“dumpassembly 程序集地址”即可查看程序集的信息了。
在这里插入图片描述在这里插入图片描述
  dumpconcurrentdictionary、dumpconcurrentqueue、dumparray命令用于查看并发字典、并发队列及数组类型的数据,使用上述命令前需要用dumpheap -mt 或者dumpheap -type列出对象清单,然后找感兴趣的对象查看详情。

参考文献:
[1]https://learn.microsoft.com/zh-cn/dotnet/core/diagnostics/dotnet-dump
[2]https://www.nuget.org/packages/dotnet-dump

http://www.lqws.cn/news/565075.html

相关文章:

  • 深入理解Mysql索引底层数据结构和算法
  • NeRF-Lidar实景重建:大疆Mavic 4 Pro低成本建模方案(2025实战指南)
  • 当SAM遇到声纳图像时之论文阅读
  • 【blender】使用bpy对一个obj的不同mesh进行不同的材质贴图(涉及对bmesh的操作)
  • 一键高效率图片MD5修改工具PHP版
  • 量子算法入门——5.Qiskit库介绍与简单应用(1)
  • 《伴时匣》app开发技术分享--用户登录(3)
  • MYSQL与PostgreSQL的差异
  • 解锁云原生微服务架构:搭建与部署实战全攻略
  • mac触摸板设置右键
  • 四大WordPress模板资源网站
  • docker启动xxl-job 网络问题
  • 【Linux手册】进程等待:必要性剖析与wait、waitpid等多种方式实操指南
  • IDE/IoT/实践小熊派LiteOS工程配置、编译、烧录、调试(基于 bearpi-iot_std_liteos 源码)
  • 软件测试 selenium
  • 【innovus基础】- 如何手动画线?
  • 【技术追踪】CLAIM:临床导向的 LGE 增强技术用于实现真实且多样化的心肌瘢痕合成与分割
  • 基于云的平板挠度模拟:动画与建模-AI云计算数值分析和代码验证
  • 青少年编程与数学 02-022 专业应用软件简介 01 设计与创意类软件:Adobe Creative Cloud
  • Wpf布局之UniformGrid面板!
  • MCP 中间件机制正式发布:FastMCP 的「责任链」进化
  • rollupOptions 详细讲解,如何优化性能
  • ali PaddleNLP docker
  • MATLAB GUI界面设计 第七章——高级应用
  • 机器学习8——神经网络下
  • 手机流量监控App(GlassWire)使用指南
  • WPF两种绑定方式的分析
  • ACE之ACE_Dev_Poll_Reactor
  • 高性能 List 转 Map 解决方案(10,000 元素)
  • 阿里云-接入SLS日志