小红花·文摘
  • 首页
  • 广场
  • 排行榜🏆
  • 直播
  • FAQ
Dify.AI

一位朋友分析RFID标签打印崩溃,使用windbg定位到gc标记阶段的无效对象。通过dump分析发现内存被字符串覆盖,推测是非托管代码导致溢出,影响打印操作。建议关注相关信息。

记一次 .NET 某RFID标签打印客户端 崩溃分析

dotNET跨平台
dotNET跨平台 · 2026-01-07T00:04:32Z
对 .NET FileSystemWatcher引发内存碎片化的 反思 - 一线码农

文章讨论了FileSystemWatcher引发的内存碎片化问题,分析了碎片化的经典与非经典原因及调查方法。通过代码示例,展示了如何使用windbg和Harmony工具定位问题,并强调了reloadOnChange=true可能导致的内存占用。希望这些反思能帮助开发者解决类似问题。

对 .NET FileSystemWatcher引发内存碎片化的 反思 - 一线码农

一线码农
一线码农 · 2025-11-21T03:21:00Z
使用 WinDbg 分析 C# 程序高 CPU 占用问题

使用 WinDbg 分析 C# 程序的高 CPU 占用问题,首先通过任务管理器获取转储文件,然后在 WinDbg 中打开并执行命令定位问题。分析堆栈信息后发现程序在 Console.ReadLine() 方法上卡住。建议使用 Visual Studio 性能探查器快速识别性能瓶颈。

使用 WinDbg 分析 C# 程序高 CPU 占用问题

dotNET跨平台
dotNET跨平台 · 2025-10-18T00:01:09Z

一名学员的系统崩溃经过windbg分析,发现是C++数组越界导致托管堆损坏。最终通过assert定位问题,调试过程艰难但成功找到原因。

记一次 .NET 某工控PCB巡检系统 崩溃分析

dotNET跨平台
dotNET跨平台 · 2025-08-22T00:01:25Z

一名学员的系统崩溃经过windbg分析,发现是C++数组越界导致托管堆损坏。最终通过assert定位问题,调试过程艰难但成功找到原因。

记一次 .NET 某工控PCB巡检系统 崩溃分析 - 一线码农

一线码农
一线码农 · 2025-08-20T01:42:00Z

文章分析了一个.NET程序崩溃的原因,主要是线程池中的线程异常退出。作者使用windbg和process monitor等工具追踪和重现问题,最终找到导致崩溃的调用栈。同时总结了C#与C++交互时可能出现的问题,提醒开发者注意。

对 .NET线程 异常退出引发程序崩溃的反思

dotNET跨平台
dotNET跨平台 · 2025-08-06T00:01:52Z
WinDbg 分析 .NET Dump 线程锁问题

使用 WinDbg 和 SOS 扩展分析 .NET 应用程序的高 CPU 占用时,首先加载 SOS.dll,查看高 CPU 占用线程及其调用栈,以识别忙线程、阻塞线程和 GC 线程。通过调用栈分析,判断是否因锁等因素导致异常 CPU 占用。掌握宏观视角、线程类型识别和深入分析技巧,有助于高效诊断问题。

WinDbg 分析 .NET Dump 线程锁问题

dotNET跨平台
dotNET跨平台 · 2025-05-25T00:01:20Z

文章介绍了如何获取AOT程序的CPU利用率。首先提到.NET线程池中的cpuUtilization字段记录了CPU利用率。由于Windows线程池源码未公开,获取CPU利用率较难。建议通过修改AOT默认线程池配置,并使用windbg工具分析PortableThreadPool类的静态字段来获取CPU利用率。总结指出,使用默认WindowsThreadPool较难获取CPU利用率,但切换到.NET线程池可能实现。

AOT漫谈专题(第三篇): 如何获取C#程序的CPU利用率

dotNET跨平台
dotNET跨平台 · 2024-10-15T00:01:17Z

文章探讨了如何获取AOT程序的CPU利用率。首先介绍了.NET线程池中的`cpuUtilization`字段,该字段用于记录CPU利用率。文章分析了不同版本的线程池实现,包括Win32ThreadPool和PortableThreadPool,并指出Windows线程池没有公开源码,因此需要通过代码获取CPU利用率。最后,文章介绍了使用windbg工具获取AOT程序中CPU利用率的方法。

AOT漫谈专题(第三篇): 如何获取C#程序的CPU利用率 - 一线码农

一线码农
一线码农 · 2024-10-14T02:35:00Z

文章介绍了如何对.NET Native AOT程序进行轻量级APM监控。首先,通过配置EventSourceSupport保留eventpipe组件,以便使用dotnet-counter监控内存和CPU指标。其次,利用windbg手动分析托管堆数据和GC信息。目前.NET AOT不支持sos级分析,但未来版本可能会改善。

AOT漫谈专题(第二篇): 如何对C# AOT轻量级APM监控

dotNET跨平台
dotNET跨平台 · 2024-10-13T00:00:36Z

文章介绍了如何对.NET Native AOT程序进行轻量级APM监控。首先,通过配置EventSourceSupport=true保留eventpipe组件,然后使用dotnet-counters监控托管堆和CPU等指标。此外,还介绍了使用windbg手动分析托管堆数据和GC信息。目前.NET AOT仍需手动分析gcheap,但未来可能会有更完整的支持。

AOT漫谈专题(第二篇): 如何对C# AOT轻量级APM监控 - 一线码农

一线码农
一线码农 · 2024-10-12T04:54:00Z
聊一聊 C#中有趣的 SourceGenerator生成器

源生成器是Roslyn编译器的一项功能,允许在编译时插入自定义代码,特别用于AOT领域生成序列化类型的元数据。本文介绍了源生成器的基本概念、实现示例及调试方法,并强调了windbg在底层研究中的重要性。

聊一聊 C#中有趣的 SourceGenerator生成器

dotNET跨平台
dotNET跨平台 · 2024-09-30T23:55:13Z

本文讲述了在Roslyn编译器中使用源生成器的应用。源生成器允许在编译时插入自定义代码。文章通过示例展示如何使用源生成器生成代码,并用windbg工具调试Roslyn的内部逻辑。作者强调windbg在研究底层技术中的重要性,并提供代码和调试步骤,帮助读者理解源生成器的原理。

聊一聊 C#中有趣的 SourceGenerator生成器 - 一线码农

一线码农
一线码农 · 2024-09-30T09:16:00Z

这篇文章讲述了.NET高级调试中与Bitmap相关的故事,通过代码示例和内存分析展示了Bitmap的内存消耗和所占内存段,同时介绍了如何通过windbg调试Bitmap并找到其所属的内存段。

聊一聊 C# 中让人惶恐的 Bitmap - 一线码农

一线码农
一线码农 · 2024-08-25T08:16:00Z

最新版本的WinDbg可以伪装成GDB与远程GDBServer通信,实现对Linux上.NET程序的调试。文章介绍了在CentOS7上安装.NET Core 3.1并使用gdbserver启动程序的过程,然后使用WinDbg连接到gdbserver进行调试。WinDbg可以通过插件扩展功能,实现与GDBServer的通信。最后,文章总结了现在的WinDbg已经支持多平台,并赞扬了其宿主模式的架构。

如何用WinDbg调试Linux上的.NET程序

dotNET跨平台
dotNET跨平台 · 2024-07-23T00:00:28Z

WinDbg 1.2402.24001.0版本可以伪装成GDB与远程GDBServer通信,实现对Linux上.NET程序的调试。文章介绍了在CentOS7上安装.NET Core 3.1和gdbserver,并使用WinDbg连接到gdbserver进行调试。WinDbg是一个宿主,可以通过插件扩展功能。通过验证,文章证明了WinDbg可以成功调试Linux上的.NET程序。

如何用 WinDbg 调试Linux上的 .NET程序 - 一线码农

一线码农
一线码农 · 2024-07-22T02:22:00Z
记一次 .NET某游戏币自助机后端 内存暴涨分析 - 一线码农

最近一位朋友遇到程序内存暴涨的问题,分析发现是非托管内存导致的。使用Windbg工具分析Linux上的dump,发现程序总内存占用3.65G,主要由线程栈占据。建议将线程栈大小从8M调整为1.5M,并检查Kafka相关线程,可能是线程过多或业务执行时间长导致的线程饥饿。

记一次 .NET某游戏币自助机后端 内存暴涨分析 - 一线码农

一线码农
一线码农 · 2024-06-12T00:53:00Z
记一次 .NET某工控视觉自动化系统 卡死分析 - 一线码农

这篇文章讲述了一位学员在调试技术方面的成长,分析了一个涉及线程死锁的dump文件。通过使用windbg工具,学员识别出问题源于一个第三方SDK库的调用,最终发现是由于线程间的循环锁导致的死锁,展示了其分析过程和解决方案,体现了技术能力的提升。

记一次 .NET某工控视觉自动化系统 卡死分析 - 一线码农

一线码农
一线码农 · 2024-06-06T02:36:00Z
记一次 .NET某工业设计软件 崩溃分析 - 一线码农

文章讨论了软件崩溃的问题,分析了崩溃原因与CLR中的ExecutionEngineException异常。通过使用windbg工具,定位到崩溃发生在接口Stub调用中,发现this指针为null,导致异常。文章还提到多AppDomain和托管C++混合编程可能导致的问题,并提出了几种解决方案。

记一次 .NET某工业设计软件 崩溃分析 - 一线码农

一线码农
一线码农 · 2024-05-31T04:43:00Z
记一次 .NET某企业数字化平台 崩溃分析 - 一线码农

文章分析了软件崩溃的原因,发现是由于栈溢出引起的异常。通过使用windbg工具,定位到SqlSugar库在处理表达式树时的递归调用导致了栈溢出。建议改用循环结构以避免此类问题,并更新代码以解决崩溃。

记一次 .NET某企业数字化平台 崩溃分析 - 一线码农

一线码农
一线码农 · 2024-05-27T02:42:00Z
  • <<
  • <
  • 1 (current)
  • 2
  • >
  • >>
👤 个人中心
在公众号发送验证码完成验证
登录验证
在本设备完成一次验证即可继续使用

完成下面两步后,将自动完成登录并继续当前操作。

1 关注公众号
小红花技术领袖公众号二维码
小红花技术领袖
如果当前 App 无法识别二维码,请在微信搜索并关注该公众号
2 发送验证码
在公众号对话中发送下面 4 位验证码
小红花技术领袖俱乐部
小红花·文摘:汇聚分发优质内容
小红花技术领袖俱乐部
Copyright © 2021-
粤ICP备2022094092号-1
公众号 小红花技术领袖俱乐部公众号二维码
视频号 小红花技术领袖俱乐部视频号二维码