IT博客汇
首页
精华
技术
设计
资讯
扯淡
权利声明
登录
注册
相关标签
作者:
一线码农
400
source
关注
TA的标签:
...
endpoint
service
之旅
服务
码农
服务端
server
集合
十五天
wcf
精通
message
一个
css
love
0
一线码农
发表于
2024-04-07 04:42:00
记一次 .NET某管理局检测系统 内存暴涨分析 - 一线码农
【摘要】一:背景 1. 讲故事 前些天有位朋友微信找到我,说他们的WPF程序有内存泄漏的情况,让我帮忙看下怎么回事?并且dump也抓到了,网上关于程序内存泄漏,内存暴涨的文章不计其数,看样子这个dump不是很好分析,不管怎么说,上 windbg 说话。 二:WinDbg分析 1. 内存真的暴涨吗 在.NET阅读全文 ...
继续阅读 (73)
love
0
一线码农
发表于
2024-03-28 04:46:00
记一次 .NET某防伪验证系统 崩溃分析 - 一线码农
【摘要】一:背景 1. 讲故事 昨晚给训练营里面的一位朋友分析了一个程序崩溃的故障,因为看小伙子昨天在群里问了一天也没搞定,干脆自己亲自上阵吧,抓取的dump也是我极力推荐的用 procdump 注册 AEDebug 的方式,省去了很多沟通成本。 二:WinDbg分析 1. 为什么会崩溃 windbg有一个阅读全文 ...
继续阅读 (69)
love
0
一线码农
发表于
2024-03-25 08:28:00
记一次 .NET某半导体CIM系统 崩溃分析 - 一线码农
【摘要】一:背景 1. 讲故事 前些天有一位朋友在公众号上找到我,说他们的WinForm程序部署在20多台机器上,只有两台机器上的程序会出现崩溃的情况,自己找了好久也没分析出来,让我帮忙看下怎么回事,就喜欢这些有点调试基础的,dump也不需要我指导怎么去抓,接下来我们就上windbg开始分析吧。 二:Win阅读全文 ...
继续阅读 (75)
love
0
一线码农
发表于
2024-03-21 07:56:00
记一次 .NET某游戏后端API服务 CPU爆高分析 - 一线码农
【摘要】一:背景 1. 讲故事 前几天有位朋友找到我,说他们的API服务程序跑着跑着CPU满了降不下去,让我帮忙看下怎么回事,现在貌似民间只有我一个人专注dump分析,还是申明一下我dump分析是免费的,如果想学习.NET高级调试的分析技术,可以来我的训练营看看,话不多说,dump分析走起! 二:WinDb阅读全文 ...
继续阅读 (86)
love
0
一线码农
发表于
2024-03-19 05:11:00
记一次 .NET某施工建模软件 卡死分析 - 一线码农
【摘要】一:背景 1. 讲故事 前几天有位朋友在微信上找到我,说他的软件卡死了,分析了下也不知道是咋回事,让我帮忙看一下,很多朋友都知道,我分析dump是免费的,当然也不是所有的dump我都能搞定,也只能尽自己最大能力帮助别人缩小问题范围吧,既然dump有了,接下来就开启分析之路。 二:WinDbg分析 1阅读全文 ...
继续阅读 (125)
love
0
一线码农
发表于
2024-03-06 05:34:00
记一次 .NET某设备监控自动化系统 CPU爆高分析 - 一线码农
【摘要】一:背景 1. 讲故事 先说一下题外话,一个监控别人系统运行状态的程序,结果自己出问题了,有时候想一想还是挺讽刺的,哈哈,开个玩笑,我们回到正题,前些天有位朋友找到我,说他们的系统会偶发性CPU爆高,CPU上去了就下不来了,让我帮忙看一下怎么回事,而且自己也分析过了,没找到哪里有问题,写监控的都是高阅读全文 ...
继续阅读 (84)
love
0
一线码农
发表于
2024-02-26 05:38:00
.NET高级调试之sos命令输出看不懂怎么办 - 一线码农
【摘要】一:背景 1. 讲故事 很多.NET开发者在学习高级调试的时候,使用sos的命令输出会发现这里也看不懂那里也看不懂,比如截图中的这位朋友。 .NET高级调试属于一个偏冷门的领域,国内可观测的资料比较少,所以很多东西需要你自己去探究源代码,然后用各种调试工具去验证,相关源代码如下: coreclr:阅读全文 ...
继续阅读 (70)
love
0
一线码农
发表于
2024-02-21 10:28:00
记一次 .NET某列控连锁系统 崩溃分析 - 一线码农
【摘要】一:背景 1. 讲故事 过年喝了不少酒,脑子不灵光了,停了将近一个月没写博客,今天就当新年开工写一篇吧。 去年年初有位朋友找到我,说他们的系统会偶发性崩溃,在网上也发了不少帖子求助,没找到自己满意的答案,让我看看有没有什么线索,看样子这是一个牛皮藓的问题,既然对方有了dump,那就分析起来吧。 二:阅读全文 ...
继续阅读 (76)
love
0
一线码农
发表于
2024-01-26 04:42:00
记一次 .NET某工控自动化系统 崩溃分析 - 一线码农
【摘要】一:背景 1. 讲故事 前些天微信上有位朋友找到我,说他的程序偶发崩溃,分析了个把星期也没找到问题,耗费了不少人力物力,让我能不能帮他看一下,给我申请了经费,哈哈,遇到这样的朋友就是爽快,刚好周二晚上给调试训练营的朋友分享 GC标记阶段 相关知识,而这个dump所展示的问题是对这块知识的一个很好的巩阅读全文 ...
继续阅读 (85)
love
0
一线码农
发表于
2024-01-25 08:09:00
C# AsyncLocal 是如何实现 Thread 间传值 - 一线码农
【摘要】一:背景 1. 讲故事 这个问题的由来是在.NET高级调试训练营第十期分享ThreadStatic底层玩法的时候,有朋友提出了AsyncLocal是如何实现的,虽然做了口头上的表述,但总还是会不具体,所以觉得有必要用文字+图表的方式来系统的说一下这个问题。 二:AsyncLocal 线程间传值 1.阅读全文 ...
继续阅读 (86)
love
0
一线码农
发表于
2024-01-23 08:36:00
C# 线程本地存储 为什么线程间值不一样 - 一线码农
【摘要】一:背景 1. 讲故事 有朋友在微信里面问我,为什么用 ThreadStatic 标记的字段,只有第一个线程拿到了初始值,其他线程都是默认值,让我能不能帮他解答一下,尼玛,我也不是神仙什么都懂,既然问了,那我试着帮他解答一下,也给后面类似疑问的朋友解个惑吧。 二:为什么值不一样 1. 问题复现 为了阅读全文 ...
继续阅读 (85)
love
0
一线码农
发表于
2024-01-18 03:00:00
记一次 .NET某道闸收费系统 内存溢出分析 - 一线码农
【摘要】一:背景 1. 讲故事 前些天有位朋友找到我,说他的程序几天内存就要爆一次,不知道咋回事,找不出原因,让我帮忙看一下,这种问题分析dump是最简单粗暴了,拿到dump后接下来就是一顿分析。 二:WinDbg 分析 1. 程序为什么会暴 程序既然会爆,可能是虚拟地址受限,也可能是系统内存不足,可以用阅读全文 ...
继续阅读 (74)
love
0
一线码农
发表于
2024-01-16 01:41:00
记一次 .NET某MES自动化桌面程序 卡死分析 - 一线码农
【摘要】一:背景 1. 讲故事 前些天有位朋友在微信上找到我,说他们的客户端程序卡死了,让我帮忙看下是什么原因导致的?dump也拿到了手,既然有了dump就开始正式分析吧。 二:WinDbg 分析 1. 什么导致的卡死 客户端的程序卡死比较好找原因,入手点就是主线程,看下它此时正在做什么,可以用 k 命令。阅读全文 ...
继续阅读 (84)
love
0
一线码农
发表于
2024-01-05 04:40:00
记一次 .NET某收银软件 非托管泄露分析 - 一线码农
【摘要】一:背景 1. 讲故事 在我的分析之旅中,遇到过很多程序的故障和杀毒软件扯上了关系,有杀毒软件导致的程序卡死,有杀毒软件导致的程序崩溃,这一篇又出现了一个杀毒软件导致的程序非托管内存泄露,真的是分析多了什么鬼都能撞上。 前几天有位朋友找到过,我他们的程序内存在慢慢的泄露,最后程序会出现崩溃,不知道是阅读全文 ...
继续阅读 (93)
love
0
一线码农
发表于
2024-01-02 05:24:00
聊一聊 C# 的线程本地存储TLS到底是什么 - 一线码农
【摘要】一:背景 1. 讲故事 有朋友在后台留言让我说一下C#的 ThreadStatic 线程本地存储是怎么玩的?这么说吧,C#的ThreadStatic是假的,因为C#完全是由CLR(C++)承载的,言外之意C#的线程本地存储,用的就是用C++运行时提供的 __declspec(thread) 或 __阅读全文 ...
继续阅读 (92)
love
0
一线码农
发表于
2023-12-28 04:12:00
记一次 .NET某股票交易软件 灵异崩溃分析 - 一线码农
【摘要】一:背景 1. 讲故事 在dump分析的旅程中也会碰到一些让我无法解释的灵异现象,追过这个系列的朋友应该知道,上一篇我聊过 宇宙射线 导致的程序崩溃,后来我又发现了一例,而这一例恰恰是高铁的 列控连锁一体化 程序,所以更加让我确定这是由于 电离辐射 干扰了计算机的 数字信号 导致程序的bit翻转,而阅读全文 ...
继续阅读 (89)
love
0
一线码农
发表于
2023-12-25 03:43:00
记一次 .NET某工控 宇宙射线 导致程序崩溃分析 - 一线码农
【摘要】一:背景 1. 讲故事 为什么要提 宇宙射线, 太阳耀斑 导致的程序崩溃呢?主要是昨天在知乎上看了这篇文章:莫非我遇到了传说中的bug? ,由于 rip 中的0x41变成了0x61出现了bit位翻转导致程序崩溃,截图如下: 下面的评论大多是说由于 宇宙射线,这个太玄乎了,说实话看到这个 传说bug阅读全文 ...
继续阅读 (91)
love
0
一线码农
发表于
2023-12-22 07:11:00
聊一聊 C# 线程切换后上下文都去了哪里 - 一线码农
【摘要】一:背景 1. 讲故事 总会有一些朋友是不是问一个问题,在 Windows 中线程做了上下文切换,请问被切的线程他的寄存器上下文都去了哪里?能不能给我挖出来?这个问题其实比较底层,如果对操作系统没有个体系层面的理解以及做过源码分析,其实很难说明白,这篇我们就从.NET高级调试的角度试着分析一下吧。阅读全文 ...
继续阅读 (91)
love
0
一线码农
发表于
2023-12-20 08:18:00
记一次 .NET 某药厂业务系统 CPU爆高分析 - 一线码农
【摘要】一:背景 1. 讲故事 前段时间有位朋友找到我,说他们的程序出现了CPU爆高,让我帮忙看下怎么回事?这种问题好的办法就是抓个dump丢给我,推荐的工具就是用 procdump 自动化抓捕。 二:Windbg 分析 1. CPU 真的爆高吗 还是老规矩,要想找到这个答案,可以使用 !tp 命令。 0:阅读全文 ...
继续阅读 (93)
love
0
一线码农
发表于
2023-12-14 03:21:00
聊一聊 .NET高级调试 内核模式堆泄露 - 一线码农
【摘要】一:背景 1. 讲故事 前几天有位朋友找到我,说他的机器内存在不断的上涨,但在任务管理器中查不出是哪个进程吃的内存,特别奇怪,截图如下: 在我的分析旅程中都是用户态模式的内存泄漏,像上图中的异常征兆已经明确告诉你了,不是用户态程序吃的内存,那就是内核态程序吃的,比如: 某些驱动程序 操作系统 从概率阅读全文 ...
继续阅读 (107)
love
0
一线码农
发表于
2023-12-12 08:48:00
聊一聊 .NET高级调试 中必知的符号表 - 一线码农
【摘要】一:背景 1. 讲故事 在高级调试的旅行中,发现有不少人对符号表不是很清楚,其实简而言之符号表中记录着一些程序的生物特征,比如哪个地址是函数(签名信息),哪个地址是全局变量,静态变量,行号是多少,数据类型是什么 等等,目的就是辅助我们可视化的调试,如果没有这些辅助我们看到的都是一些无意义的汇编代码,阅读全文 ...
继续阅读 (98)
love
0
一线码农
发表于
2023-12-11 04:09:00
记一次 .NET 某新能源材料检测系统 崩溃分析 - 一线码农
【摘要】一:背景 1. 讲故事 上周有位朋友找到我,说他的程序经常会偶发性崩溃,一直没找到原因,自己也抓了dump 也没分析出个所以然,让我帮忙看下怎么回事,那既然有 dump,那就开始分析呗。 二:Windbg 分析 1. 到底是哪里的崩溃 一直跟踪我这个系列的朋友应该知道分析崩溃第一个命令就是 !ana阅读全文 ...
继续阅读 (108)
love
0
一线码农
发表于
2023-12-06 03:39:00
记一次 .NET 某零售管理系统 存储不足分析 - 一线码农
【摘要】一:背景 1. 讲故事 前几天有位朋友找到我,说他的程序会偶发性的报 存储空间不足,无法处理此命令 的错误,让我帮忙看下到底怎么回事,哈哈,人家是有备而来,dump都准备好了,话不多说,直接分析开干。 二:WinDbg 分析 1. 捕获dump中的异常 一般来讲别人说的只是一个参考,我们需要自己到d阅读全文 ...
继续阅读 (103)
love
0
一线码农
发表于
2023-12-04 03:17:00
聊一聊 .NET高级调试 中的一些内存术语 - 一线码农
【摘要】一:背景 1. 讲故事 在高级调试的旅程中,经常会有一些朋友问我什么是 工作集(内存),什么是 提交大小,什么是 Virtual Size, 什么是 Working Set 。。。截图如下: 既然有很多朋友问,这些用口头也不怎么好描述,刚好上午有时间就系统的聊一下吧。 二:内存术语解读 1. Vir阅读全文 ...
继续阅读 (117)
love
0
一线码农
发表于
2023-11-29 08:00:00
高级调试常见疑问汇总 - 一线码农
【摘要】[如何开启WinDbg本机调试问题] (https://www.cnblogs.com/huangxincheng/articles/17864581.html) [调试托管代码无行号问题] (https://www.cnblogs.com/huangxincheng/articles/178645阅读全文 ...
继续阅读 (85)
love
0
一线码农
发表于
2023-11-24 07:29:00
对 .NET程序2G虚拟地址紧张崩溃 的最后一次反思 - 一线码农
【摘要】一:背景 1. 讲故事 最近接连遇到了几起 2G 虚拟地址紧张 导致的程序崩溃,基本上 90% 都集中在医疗行业,真的很无语,他们用的都是一些上古的 XP,Windows7 x86,我也知道技术人很难也基本无法推动硬件系统和设备的升级,这里蕴含了巨大的人情世故。 写这一篇的目的是想系统化的整理一下如阅读全文 ...
继续阅读 (102)
love
0
一线码农
发表于
2023-11-16 06:39:00
如何通过 wireshark 捕获 C# 上传的图片 - 一线码农
【摘要】一:背景 1. 讲故事 这些天计划好好研究下tcp/ip,以及socket套接字,毕竟工控中设计到各种交互协议,如果只是模模糊糊的了解,对分析此类dump还是非常不利的,而研究协议最好的入手点就是用抓包工具 wireshark,废话不多说,这篇通过 wireshark 提取一个小图片作为入手。 二:阅读全文 ...
继续阅读 (96)
love
0
一线码农
发表于
2023-11-14 05:21:00
记一次 .NET 某券商论坛系统 卡死分析 - 一线码农
【摘要】一:背景 1. 讲故事 前几个月有位朋友找到我,说他们的的web程序没有响应了,而且监控发现线程数特别高,内存也特别大,让我帮忙看一下怎么回事,现在回过头来几经波折,回味价值太浓了。 二:程序到底经历了什么 1. 在线程上找原因 这个程序内存高,线程高,无响应,尼玛是一个复合态问题,那怎么入手呢?按阅读全文 ...
继续阅读 (121)
love
0
一线码农
发表于
2023-11-13 07:38:00
记一次 .NET 某工控电池检测系统 卡死分析 - 一线码农
【摘要】一:背景 1. 讲故事 前几天有位朋友找到我,说他的窗体程序有卡死现象,让我帮忙看下怎么回事,解决这种问题就需要在卡死的时候抓一个dump下来,拿到dump之后就可以分析了。 二:为什么会卡死 1. 观察主线程 窗体程序的卡死,需要观察主线程此时正在做什么,可以用 !clrstack 命令观察。 0阅读全文 ...
继续阅读 (108)
love
0
一线码农
发表于
2023-11-07 09:22:00
聊一聊 tcp/ip 在.NET故障分析的重要性 - 一线码农
【摘要】一:背景 1. 讲故事 这段时间分析了几个和网络故障有关的.NET程序之后,真的越来越体会到计算机基础课的重要,比如 计算机网络 课,如果没有对 tcpip协议 的深刻理解,解决这些问题真的很难,因为你只能在高层做黑盒测试,你无法看到 tcp 层面的握手和psh通讯。 这篇我们通过两个小例子来理解一阅读全文 ...
继续阅读 (105)
上一页
2/7
下一页