关闭

记一次 .NET某上位机视觉程序卡死分析

  一、背景  1. 讲故事  前段时间有位朋友找到我,说他的窗体程序在客户这边出现了卡死,让我帮忙看下怎么回事?dump也生成了,既然有dump了那就上 windbg 分析吧。  二、WinDbg 分析  1. 为什么会卡死  窗体程序的卡死,入口门槛很低,后续往...

#
Donet
#
DoNet
分享:

我们如何看待.NET 8的新功能.NET Aspire?

  随着技术的不断进步,.NET 平台也在不断发展和完善。作为微软推出的新一代开发框架,.NET 8在功能和性能方面都进行了许多改进。其中,.NET Aspire是.NET 8中的一个新特性,它为开发者提供了一种全新的方式来构建和部署Web应用程序。那么,如何看待.NET...

#
Donet
#
DoNet
分享:

记一次 .NET某酒业业务系统崩溃分析(图)

  一、背景  1. 讲故事  前些天有位朋友找到我,说他的程序每次关闭时就会自动崩溃,一直找不到原因让我帮忙看一下怎么回事,这位朋友应该是第二次找我了,分析了下 dump 还是挺经典的,拿出来给大家分享一下吧。  二、WinDbg 分析  1. 为什么会...

#
Donet
#
DoNet
分享:

在ASP.NET Core项目中优雅地使用策略模式

  在软件开发中,策略模式是一种常用的设计模式,它允许你定义一系列的算法,把它们一个个封装起来,并使它们可以相互替换。策略模式让算法的变化独立于使用算法的客户。在ASP.NET Core项目中,策略模式尤其有用,可以帮助我们构建更加模块化和易于测试的...

#
Donet
#
DoNet
分享:

.NET 高性能缓冲队列实现 BufferQueue

  在.NET应用开发中,缓冲队列作为一种重要的数据结构,广泛应用于消息处理、任务调度、数据流处理等场景。一个高性能的缓冲队列实现,能够有效提升系统的吞吐量和响应速度。本文将详细介绍如何在.NET中实现一个高性能的缓冲队列——BufferQueue,并探讨...

#
Donet
#
DoNet
分享:

深入了解.NET中的ValueStopwatch计时器

  概述:ValueStopwatch是.NET中轻量级计时器,用于高性能时间测量。作为值类型,避免了装箱拆箱开销,内存占用小。通过简单的使用方法,轻松实现代码块执行时间测量,且相比Stopwatch更为高效。  在.NET中,ValueStopwatch是一个轻量级的计时器类,用...

#
Donet
#
DoNet
分享:

.NET Core的高性能特性及其实践,你学会了吗?

  随着云计算和互联网技术的飞速发展,应用程序对于性能的要求也日益提高。.NET Core,作为微软推出的跨平台开源框架,以其卓越的性能和灵活性,正逐渐成为开发新式云应用程序的首选。本文将深入探讨.NET Core的高性能特性,并通过C#示例代码来展示其在实...

#
Donet
#
DoNet
分享:

聊聊Quartz.NET 实现作业定时调度详解

  Quartz.NET 是一个开源的作业调度库,它可以在你的 .NET 应用程序中用来执行定时任务。Quartz.NET 提供了丰富的调度选项,如简单、复杂和重复的调度需求。它类似于 Java 的 Quartz,但是专为 .NET 环境设计。  Quartz.NET 核心组件  1. Scheduler ...

#
Donet
#
DoNet
分享:

如何更改 .NET 中的默认时区?

  在.NET开发中,处理日期和时间是一个常见的任务。默认情况下,.NET使用系统所在的本地时区来解释和处理DateTime对象。然而,在某些情况下,我们可能需要更改或指定不同的时区来处理时间。本文将介绍如何在.NET中更改默认时区,并提供C#的示例代码。  ...

#
Donet
#
DoNet
分享:

记一次 .NET某工控WPF程序被人恶搞的卡死分析

  一、背景  1. 讲故事  这一期程序故障除了做原理分析,还顺带吐槽一下,熟悉我的朋友都知道我分析dump是免费的,但免费不代表可以滥用我的宝贵时间,我不知道有些人故意恶搞卡死是想干嘛,不得而知,希望后面类似的事情越来越少吧!废话不多说,我...

#
Donet
#
DoNet
分享:

记一次 .NET某工控视觉自动化系统卡死分析(图)

  一、背景  1. 讲故事  今天分享的dump是训练营里一位学员的,从一个啥也不会到现在分析的有模有样,真的是看他成长起来的,调试技术学会了就是真真实实自己的,话不多说,上windbg说话。  二、WinDbg 分析  1. 为什么会卡死  这位学员是从事...

#
Donet
#
DoNet
分享:

记一次 .NET某质量检测中心系统,崩溃分析(图)

  一、背景  1. 讲故事  这些天有点意思,遇到的几个程序故障都是和Windows操作系统或者第三方组件有关系,真的有点无语,今天就带给大家一例 IIS 相关的与大家分享,这是一家国企的.NET程序,出现了崩溃急需分析。  二、WinDbg 分析  1. 为什么...

#
Donet
#
DoNet
分享:

.NET中的数据校验:特性与反射的完美结合

  在.NET开发中,数据校验是一个不可或缺的部分,它确保应用程序接收到的数据是有效和可靠的。为了实现高效且灵活的数据校验,我们可以结合使用特性和反射。这种组合提供了一种声明式的方式来定义和执行校验逻辑,使得代码更加整洁、可维护,并提高了代码...

#
Donet
#
DoNet
分享:

.NET 6:生成单一可执行文件的应用

  在.NET 6中,开发者可以享受到许多新特性和改进,其中之一就是能够更容易地生成单一的可执行文件(也称为“单文件应用”或“自包含应用”)。这种应用将所有依赖项和运行时都打包到一个可执行文件中,从而简化了部署和分发。以下是如何为WinForms应用或...

#
Donet
#
DoNet
分享:

探索.NET中的定时器:选择最适合你的应用场景

  概述:.NET提供多种定时器,如System.Windows.Forms.Timer适用于UI,System.Web.UI.Timer用于Web,System.Diagnostics.Timer用于性能监控,System.Threading.Timer和System.Timers.Timer用于一般定时任务。在.NET 6及以上,还有更直观的System.Threadi...

#
Donet
#
DoNet
分享:

.NET6中的await原理浅析

  在.NET 6中,异步编程已经成为了一种常见的编程模式,特别是在处理I/O操作、网络请求或需要长时间运行的计算任务时。await关键字在异步编程中扮演了核心角色,它使得异步代码的编写变得更为直观和易于理解。本文将深入探讨.NET 6中await的工作原理,并...

#
Donet
#
DoNet
分享:

.NET Core中灵活使用反射的技术实践

  在.NET Core开发中,反射(Reflection)是一种强大的技术,它允许程序在运行时检查类型信息、动态创建和调用类型成员等。反射提供了程序在运行时自我检查和修改的能力,从而增强了程序的灵活性和可扩展性。本文将介绍如何在.NET Core中灵活使用反射技术...

#
Donet
#
DoNet
分享:

聊聊 .NET9 FCall/QCall 调用约定

  前言  FCall/Qcall是托管与非托管之间的调用约定,双方需要一个契约,以弥合彼此的互相/单向调用。  非托管调用约定  先了解下非托管约定,一般有四种,分别为thiscall,stdcall ,cdecl ,fastcall   thiscall:用特定的寄存器传递当前类...

分享:

你知道.NET中的数组在内存中如何布局的吗?

  .NET中的数组在内存中布局是一个复杂的主题,涉及到内存管理、数据结构和性能优化等方面。本文将详细描述.NET中的数组内存布局,包括数组的组织方式、多维数组、数组的物理布局、性能优化以及与值类型和引用类型的关系。  数组的组织方式  在.NET中...

#
Donet
#
DoNet
分享:

.NET8强加密工具有哪些?你知道吗?

  前言  .NET程序由于众所周知的原因,因为它是一个托管中间语言代码,也即是MSIL,天然性的易于被破解。即使是现在的AOT技术,因为通过一个C++的引导程序BootStrap(.Net8的AOT引导程序BootStrap)引导,所以其逆向难度依然是容易级的。了解其加密原理,...

#
Donet
#
DoNet
分享:
分享到朋友圈
打开微信,点击底部的“发现”,
使用“扫一扫”即可将网页分享至朋友圈。

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号