如何反向绘制出 .NET程序 异步方法调用栈-牛翰网

如何反向绘制出 .NET程序 异步方法调用栈

一:背景 1. 讲故事 这个问题源于给训练营里的一位朋友分析的卡死dump,在分析期间我需要知道某一个异步方法的调用栈,但程序是 .framework 4.8 ,没有sos后续版本独有的 !dumpasync 命令,所以...
Linux系列:如何用perf跟踪.NET程序的mmap泄露-牛翰网

Linux系列:如何用perf跟踪.NET程序的mmap泄露

一:背景 1. 讲故事 如何跟踪.NET程序的mmap泄露,这个问题困扰了我差不多一年的时间,即使在官方的github库中也找不到切实可行的方案,更多海外大佬只是推荐valgrind这款工具,但这款工具底层...
记一次 .NET某固高运动卡测试 卡慢分析-牛翰网

记一次 .NET某固高运动卡测试 卡慢分析

一:背景 1. 讲故事 年前有位朋友找到我,说他们的程序会偶发性卡慢 10s 钟,在某些组合下会正常,某些组合下就会出现问题,解释不了其中的原因,让我帮忙看下怎么回事?截图如下: private voi...
记一次 .NET某云HIS系统 CPU爆高分析-牛翰网

记一次 .NET某云HIS系统 CPU爆高分析

一:背景 1. 讲故事 年前有位朋友找到我,说他们的系统会偶发性的CPU爆高,有时候是爆高几十秒,有时候高达一分多钟,自己有一点分析基础,但还是没找到原因,让我帮忙看下怎么回事? 二:CPU爆...
.NET新能源汽车锂电池检测程序UI挂死问题分析-牛翰网

.NET新能源汽车锂电池检测程序UI挂死问题分析

目录 一:背景 1. 讲故事 二: Windbg 分析 1. 程序现象 2. 理解 WindowsFormsSynchronizationContext 3. 卡死的真正原因 4. 7号线程到底创建了什么控件 三:总结 一:背景 1. 讲故事 这世间事...
.NET 某券商论坛系统卡死问题分析-牛翰网

.NET 某券商论坛系统卡死问题分析

目录 一:背景 1. 讲故事 二:程序到底经历了什么 1. 在线程上找原因 2. 误入歧途 3. 迷途知返 三:总结 一:背景 1. 讲故事 前几个月有位朋友找到我,说他们的的web程序没有响应了,而且监控发...
为什么 .NET8线程池 容易引发线程饥饿-牛翰网

为什么 .NET8线程池 容易引发线程饥饿

一:背景 1. 讲故事 最近时间相对比较宽裕,多写点文章来充实社区吧,这篇文章主要还是来自于最近遇到的几例线程饥饿(Task.Result)引发的一系列的反思和总结,我觉得.NET8容易引发饥饿的原因,...
聊一聊 C#异步中的Overlapped是如何寻址的-牛翰网

聊一聊 C#异步中的Overlapped是如何寻址的

一:背景 1. 讲故事 前段时间训练营里的一位朋友提了一个问题,我用ReadAsync做文件异步读取时,我知道在Win32层面会传 lpOverlapped 到内核层,那在内核层回头时,它是如何通过这个 lpOverlapp...
记一次 .NET某汗液测试机系统 崩溃分析-牛翰网

记一次 .NET某汗液测试机系统 崩溃分析

一:背景 1. 讲故事 上个月在社区写的文章比较少,一直关注的朋友应该知道那段时间被狗咬了以及一些琐事处理,所以手头上也攒了不少需要分享的案例,这段时间比较空闲,逐个给大 家做个分享吧,...
记一次 .NET某工业视觉软件 崩溃分析-牛翰网

记一次 .NET某工业视觉软件 崩溃分析

一:背景 1. 讲故事 前两天给训练营里的一位学员分析了一个dump,学员因为弄了一整天也没找到祸根,被我一下子弄出来了,极度想看看我是怎么分析的?由于在微信上不能一言两语表尽,干脆写一篇...