上一页 1 2 3 4 5 6 ··· 42 下一页
摘要: 一:背景 1. 讲故事 为什么说这东西比较坑人呢?是因为最近一个月接到了两个dump,都反应程序卡死无响应,最后分析下来是因为线程饥饿导致,那什么原因导致的线程饥饿呢?进一步分析发现罪魁祸首是 MySql.Data,这就让人无语了,并且反馈都是升级了MySql.Data驱动引发,接下来我们简单聊一下 阅读全文
posted @ 2024-12-20 12:29 一线码农 阅读(2681) 评论(29) 推荐(24) 编辑
摘要: 一:背景 1. 讲故事 前些天训练营里的一位学员找到我,说他们的差旅后台系统出现了CPU爆高的情况,爆高之后就下不去了,自己分析了下也没找到原因,事情比较紧急,让我帮忙看下是什么回事,手里也有dump,丢过我之后我们上 windbg 分析吧。 二:WinDbg分析 1. 为什么会CPU爆高 看过这个 阅读全文
posted @ 2024-12-11 11:55 一线码农 阅读(2165) 评论(13) 推荐(12) 编辑
摘要: 一:背景 1. 讲故事 停了一个月时间没有更新博客了,主要是这段时间有些许事情导致心神不宁,我这个人也比较浮躁所以无法潜心修炼,事情如下: 被狗咬了 也不知道是不是出门没看黄历,在小区门口店里买烟,被店老板家狗来了个猝不及防,天降横祸。让店老板赔了个疫苗钱,人生第一次被狗咬,第一次打这种狂犬疫苗,头 阅读全文
posted @ 2024-11-29 09:14 一线码农 阅读(1990) 评论(8) 推荐(21) 编辑
摘要: 一:背景 1. 讲故事 上一篇我们聊过AOT编程中可能会遇到的三大件问题,而这三大件问题又是考验你对AOT中节点图的理解,它是一切的原点,接下来我就画几张图以个人的角度来解读下吧,不一定对。 二:理解节点依赖图 1. 对节点的理解 按照官方的说法,构建依赖节点和GC的标记算法一样,都是采用深度优先, 阅读全文
posted @ 2024-10-24 10:43 一线码农 阅读(623) 评论(2) 推荐(3) 编辑
摘要: 一:背景 1. 讲故事 在 .NET AOT 编程中,难免会在 泛型,序列化,以及反射的问题上纠结和反复纠错尝试,这篇我们就来好好聊一聊相关的处理方案。 二:常见问题解决 1. 泛型问题 研究过泛型的朋友应该都知道,从开放类型上产下来的封闭类型往往会有单独的 MethodTable,并共用 EECl 阅读全文
posted @ 2024-10-23 13:00 一线码农 阅读(1961) 评论(2) 推荐(8) 编辑
摘要: 一:背景 1. 讲故事 上篇聊到了 C#程序编译成Native代码 的宏观过程,有粉丝朋友提了一个问题,能不能在 dotnet publish 发布的过程中对AOT编译器拦截进行源码级调试,这是一个好问题,也是深度研究的必经之路,这篇我们就来分享下吧。 二:托管和非托管调试器 1. 调试器介绍 相信 阅读全文
posted @ 2024-10-16 16:48 一线码农 阅读(524) 评论(1) 推荐(4) 编辑
摘要: 一:背景 1. 讲故事 大家都知道所谓的.NET Native AOT即通过AOT编译器直接将C#代码编译成机器码,大家也习惯用C/C++的编译过程来类比,都是静态编译本质上都差不多,这篇我们借助工具从宏观层面去看一看AOT的编译过程。 二:C/C++ 的编译过程 用gcc编译过c代码的朋友都知道, 阅读全文
posted @ 2024-10-15 12:00 一线码农 阅读(1177) 评论(1) 推荐(12) 编辑
摘要: 一:背景 1. 讲故事 上篇聊到了如何对AOT程序进行轻量级的APM监控,有朋友问我如何获取AOT程序的CPU利用率,本来我觉得这是一个挺简单的问题,但一研究不是这么一回事,这篇我们简单的聊一聊。 二:如何获取CPU利用率 1. 认识cpuUtilization字段 熟悉.NET底层的朋友应该知道, 阅读全文
posted @ 2024-10-14 10:35 一线码农 阅读(1650) 评论(0) 推荐(9) 编辑
摘要: 一:背景 1. 讲故事 上一篇我们聊到了如何调试.NET Native AOT 程序,这是研究一个未知领域知识的入口,这篇我们再来看下如何对 Native AOT 程序进行轻量级的APM监控,当然这里的轻量级更多的是对 AOT 中的coreclr内容的挖掘。 二:如何轻量级APM监控 1. 一个简单 阅读全文
posted @ 2024-10-12 12:53 一线码农 阅读(250) 评论(1) 推荐(4) 编辑
摘要: 一:背景 1. 讲故事 上个月接到了二个C# AOT程序的故障分析,发现如今的C# AOT程序也开始在各个领域开枝散叶了,这是一件非常好的事情,本着对这类程序有一个专业的维修态度,开一个系列好好聊一聊吧,当然我这里是漫谈,文章没有先后顺序,先从如何调试开始吧。 二:如何调试AOT程序 1. 一个简单 阅读全文
posted @ 2024-10-11 10:43 一线码农 阅读(521) 评论(0) 推荐(1) 编辑
摘要: 一:背景 1. 讲故事 在最近一两年内Visual Studio 2022会偶发的出现打开即崩溃的情况,本想着把VS卸载重装,但发现这东西想卸载干净还是蛮困难的,又加上我这个人比较懒,所以就直接重装系统了,最近的9月份因为它重装了一次系统,但过了一天又遇到了同样的问题,在这样一个背景下我决定认真的看 阅读全文
posted @ 2024-10-08 11:39 一线码农 阅读(415) 评论(3) 推荐(2) 编辑
摘要: 一:背景 1. 讲故事 前些天在看 AOT的时候关注了下 源生成器,挺有意思的一个东西,今天写一篇文章简单的分享下。 二:源生成器探究之旅 1. 源生成器是什么 简单来说,源生成器是Roslyn编译器给程序员开的一道口子,在这个口子里可以塞入一些自定义的cs代码,让Roslyn编译器在编译代码的时候 阅读全文
posted @ 2024-09-30 17:16 一线码农 阅读(540) 评论(0) 推荐(2) 编辑
摘要: 一:背景 1. 讲故事 前段时间有位朋友找到我,说他的窗体程序在客户这边出现了卡死,让我帮忙看下怎么回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 为什么会卡死 窗体程序的卡死,入口门槛很低,后续往下分析就不一定了,不管怎么说先用 !clrsta 阅读全文
posted @ 2024-09-14 10:14 一线码农 阅读(1268) 评论(2) 推荐(6) 编辑
摘要: 一:背景 1. 讲故事 前些天有位朋友在微信上联系到我,说他们的程序在客户那边崩掉了,让我帮忙看下怎么回事,dump也拿到了,那就上手分析吧。 二:WinDbg 分析 1. 哪里的崩溃 既然是程序的崩溃,自然是有原因的,皮裤套棉裤,必定有缘故,不是皮裤太薄就是棉裤没毛,用 !analyze -v 观 阅读全文
posted @ 2024-08-27 12:41 一线码农 阅读(1702) 评论(12) 推荐(12) 编辑
摘要: 一:背景 1. 讲故事 在.NET高级调试的旅程中,我常常会与 Bitmap 短兵相接,它最大的一个危害就是会让程序抛出匪夷所思的 OutOfMemoryException,也常常会让一些.NET开发者们陷入其中不能自拔,痛不欲生,基于此,这一篇我从dump分析的角度给大家深挖一下 Bitmap 背 阅读全文
posted @ 2024-08-25 16:16 一线码农 阅读(4355) 评论(19) 推荐(14) 编辑
上一页 1 2 3 4 5 6 ··· 42 下一页
点击右上角即可分享
微信分享提示