• 2024-12-27记一次 .NET某工业视觉软件 崩溃分析
    一:背景1.讲故事前两天给训练营里的一位学员分析了一个dump,学员因为弄了一整天也没找到祸根,被我一下子弄出来了,极度想看看我是怎么分析的?由于在微信上不能一言两语表尽,干脆写一篇文章出来详细的讲讲吧,哈哈,训练营里的学员得有求必应哈。。。话不多说,我们一起探索下这个程序的崩溃
  • 2024-12-26聊一聊坑人的 C# MySql.Data SDK
    https://www.cnblogs.com/huangxincheng/p/18619048 一:背景1.讲故事为什么说这东西比较坑人呢?是因为最近一个月接到了两个dump,都反应程序卡死无响应,最后分析下来是因为线程饥饿导致,那什么原因导致的线程饥饿呢?进一步分析发现罪魁祸首是 MySql.Data,这就让人无语了,并且反馈都
  • 2024-12-20聊一聊坑人的 C# MySql.Data SDK
    聊一聊坑人的C#MySql.DataSDK 一:背景1.讲故事为什么说这东西比较坑人呢?是因为最近一个月接到了两个dump,都反应程序卡死无响应,最后分析下来是因为线程饥饿导致,那什么原因导致的线程饥饿呢?进一步分析发现罪魁祸首是 MySql.Data,这就让人无语了,并且反馈都是升级了MySql.Da
  • 2024-12-20聊一聊坑人的 C# MySql.Data SDK
    一:背景1.讲故事为什么说这东西比较坑人呢?是因为最近一个月接到了两个dump,都反应程序卡死无响应,最后分析下来是因为线程饥饿导致,那什么原因导致的线程饥饿呢?进一步分析发现罪魁祸首是MySql.Data,这就让人无语了,并且反馈都是升级了MySql.Data驱动引发,接下来我们简单聊一下。二:M
  • 2024-04-03Advanced .Net Debugging 6:程序集加载器
    一、简介这是我的《Advanced.NetDebugging》这个系列的第六篇文章。这篇文章的内容是原书的第二部分的【调试实战】的第四章。这章主要讲的是程序集加载器,比如:CLR加载器简介、简单的程序集加载故障、加载上下文故障、互用性与DllNotFoundException和轻量级代码生成的
  • 2024-03-06记一次 .NET某设备监控自动化系统 CPU爆高分析
    一:背景1.讲故事先说一下题外话,一个监控别人系统运行状态的程序,结果自己出问题了,有时候想一想还是挺讽刺的,哈哈,开个玩笑,我们回到正题,前些天有位朋友找到我,说他们的系统会偶发性CPU爆高,CPU上去了就下不来了,让我帮忙看一下怎么回事,而且自己也分析过了,没找到哪里有问题,写监控的都是
  • 2024-03-04Advanced .Net Debugging 3:基本调试任务(上)
    一、简介这是我的《Advanced.NetDebugging》这个系列的第三篇文章。这个系列的每篇文章写的周期都要很长,因为每篇文章都是原书的一章内容(太长的就会分开写)。再者说,原书写的有点早,有些内容还是需要修正的,调试每个案例,这都是需要时间的。今天这篇文章的标题虽然叫做“基本
  • 2023-07-04记一次 .NET 某工控视觉系统 卡死分析
    一:背景1.讲故事前段时间有位朋友找到我,说他们的工业视觉软件僵死了,让我帮忙看下到底是什么情况,哈哈,其实卡死的问题相对好定位,无非就是看主线程栈嘛,然后就是具体问题具体分析,当然难度大小就看运气了。前几天看一篇文章说现在的.NET程序员不需要学习WinDbg,理由就是有很多好的
  • 2022-10-17聊一聊被 .NET程序员 遗忘的 COM 组件
    一:背景1.讲故事最近遇到了好几起和COM相关的Dump,由于对COM整体运作不是很了解,所以分析此类dump还是比较头疼的,比如下面这个经典的COM调用栈。0:044>~~[138c]s
  • 2022-08-14PerfView专题 (第三篇):如何寻找 C# 中的 VirtualAlloc 内存泄漏
    一:背景上一篇我们聊到了如何用PerfView去侦察NTHeap的内存泄漏,这种内存泄漏往往是用C的malloc或者C++的new分配而不释放所造成的,这一篇我们来聊一下由Virtua