首页
C&C++
C#语言
Java
Python
人工智能
Web前端
数据库
面试笔记
其它
软件推荐
搜索
.NET C#基础教程第25天:使用异常筛选器
介绍本文演示了如何使用异常筛选器来提高应用程序的可读性、可维护性和性能。学习目标传统异常处理的问题使用筛选器进行高效的异常处理。开发人员的先决条件基本了解 C# 编程语言。开始传统异常处理的问题传统上,开发人员通常使用简单的 catch 块来处理异常,并使用条...
6-10 10:0
161
.NET C#基础教程第24天:避免流控制中的异常
介绍异常旨在处理意外情况,而不是控制应用程序流。在输入验证期间使用异常可能会影响应用程序的可读性和性能。学习目标异常使用效率低下使用 TryParse 的更好方法开发人员的先决条件基本了解 C# 编程语言。开始异常使用效率低下使用异常进行流控制,尤其是在循环或经常...
6-10 9:58
90
.NET C#基础教程第23天:Span<T> over Arrays
介绍本文演示了如何使用 SpanT 来优化内存管理,并重点介绍了性能优势。学习目标数组在内存管理中的缺点跨度效率开发人员的先决条件基本了解 C# 编程语言。开始数组的缺点通常,开发人员使用数组将元素序列存储在连续内存位置。数组非常简单易懂。字节数组的代码片段如...
6-10 9:56
117
.NET C#基础教程第22天:ArrayPool
介绍由于垃圾回收器的工作量增加,频繁分配和释放较大的缓冲区可能会影响性能。建议我们,一种通过减少垃圾回收周期来回收临时缓冲区和优化性能的机制。ArrayPoolT学习目标了解传统缓冲区分配的问题使用ArrayPoolT使用最佳实践ArrayPoolT开发人员的先决条件基本了解 C# ...
6-10 9:39
184
.NET C#基础教程第21天:StringComparison
介绍无论是搜索、排序还是平等;如何比较字符串会显著影响应用程序性能。本文演示了在 .NET 中使用选项进行高效字符串比较的重要性StringComparison学习目标字符串比较效率低下的问题使用 StringComparison 进行高效的字符串比较选择正确的 StringComparison 选项开发人...
6-10 9:36
146
.NET C#基础教程第20天:Task vs. ValueTask
介绍在异步代码中优化资源使用的一种方法是使用语法来最大程度地减少堆分配,从而减少垃圾回收的压力并增强整体性能。ValueTaskTResult学习目标堆分配的问题优化ValueTaskTResult何时使用ValueTaskTResult开发人员的先决条件基本了解 C# 编程语言。开始堆分配并不完全是...
6-10 9:29
97
.NET C#基础教程第19天:堆栈与堆分配
介绍本文演示了用于充满活力和高性能的应用程序的内存分配的想法。内存分配主要有两种类型,即堆栈与堆,它们在应用程序使用资源的方式中起作用,此外,应用程序的速度和响应速度也很重要。学习目标什么是堆分配什么是堆栈分配限制堆分配对象的使用开发人员的先决条件基...
6-10 9:26
105
.NET C#基础教程第18天:AggressiveInlining特性
介绍提高应用程序性能的技术之一涉及该属性的使用。它会影响实时 (JIT) 编译器的行为,以提高关键方法的执行速度。AggressiveInlining学习目标没有 AggressiveInlining 属性的示例具有 AgressiveInlining 属性的示例何时使用 AggressiveInlining开发人员的先决条件基...
6-10 9:23
124
.NET C#基础教程第17天:Interlocked Class
介绍在多线程应用场景中,使用传统的锁定技术有时会导致原子操作的性能瓶颈。.Net 为所有原子操作提供了一个强大的工具,称为“Interlocked”类,开发人员可以通过它减少争用并提高应用程序的性能。学习目标锁的问题使用互锁类开发人员的先决条件基本了解 C# 编程语言开...
6-10 9:14
101
.NET C#基础教程第16天:Memory Caching
介绍应用程序性能的主要问题之一是从外部数据源(主要是数据库)响应所需的时间。当数据库驻留在远程计算机中或遇到重负载时,挑战是很困难的。内存中缓存可以作为更好的实现,以避免性能瓶颈。学习目标如何使用内存中缓存主要优势开发人员的先决条件基本了解 C# 编程语...
6-10 9:6
105
<<
<
…
29
30
31
32
33
34
35
36
37
38
…
>
>>
阅读排行
深入WPF数据绑定:Converter...
2017
C#异步定时器:精准定期执行...
2019
WPF应用中融入ASP.NET Core...
1488
在C# .NET 8中使用MediatR实...
1173
延迟等待的艺术:C#中Task.D...
1083
WPF中轻松生成动态图表:实...
1155
C#屏幕截图:轻松捕获活动窗...
1094
.NET Core 中集成Dapper高级...
939
C#中轻松实现二维码和条形码...
888
串口通信利器:RJCP.DLL.Ser...
971
C#串口通讯实战:基础功能及...
932
C# 中的并发性:使用 Blocki...
801
解决WPF界面卡死等待问题:...
2030
.NET 性能分析:.NET 8 中的...
793
轻松上传:C#中HTTP POST mu...
1025
还在到处加异常日志记录?试...
811
ASP.NET 后端开发:全面的路...
675
WPF中轻松操控GIF动画:WpfA...
793
.net中OpenCVSharp+Zxing读...
762
.NET —ToList 和 ToArray ...
639
打造真实感十足的速度表盘:...
758
实现WPF多语言支持:简单灵...
752
C#中Task.Run怎么用?能解决...
737
精准数字处理:C#中四舍五入...
957
.NET 9中ToList 和 ToArray ...
578
在 .NET8 中通过 RabbitMQ实...
567
掌握ImageSharp:图像处理的...
687
轻松实现.NET应用自动更新:...
667
FluentFTP实战:轻松操控FTP...
660
解密C# Socket通信:克服粘...
655
Microsoft.Extensions.Loggi...
564
解密C#中允许HttpClient使用...
526
深入了解SOAPCore:在.NET 6...
633
C# 中的弱事件 — 如何避免...
507
.NET 中的 UUID 和 ULID:最...
500
MediatR让进程内通信如此简...
1720
WPF魔法:轻松实现依赖注入...
1718
WPF神器揭秘:一键截图,轻...
484
C#文件编码检测:轻松解析文...
488
深入理解WPF中的Dispatcher...
593
掌握System.Text.Json中的多...
586
WPF开发新境界:MVVM设计模...
580
使用OpenXML在.NET 6中导出E...
566
C# Socket通信:灵活传输DTO...
555
WPF大展示专业指南:轻松实...
642
ASP .NET Core 8+ 中的全局...
407
ASP.NET Core .NET 8 中间件...
400
.NET配置文件大揭秘:轻松读...
516
实用指南:C#中优雅更新GUI...
501
深入FileSystemWatcher:C#...
606