< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

摘要: 在 .NET 开发中,异常处理是保证应用健壮性的重要手段,但不应被滥用。 异常的引发和捕获相较于普通的代码逻辑性能较差,因此在热路径(频繁执行的代码路径)中,避免依赖异常来控制程序流是提升性能的关键之一。 为什么要减少异常的使用? 性能开销大:异常处理机制涉及堆栈回溯和额外的系统调用,可能显著影响性 阅读全文
posted @ 2025-02-13 09:51 chester·chen 阅读(403) 评论(0) 推荐(4) 编辑
摘要: 为什么要避免同步读取 ASP.NET Core 中的所有 I/O 操作都是异步的。服务器实现了 Stream 接口,该接口同时具备同步和异步的方法。 在进行 I/O 操作时,应优先使用异步方法,以避免阻塞线程池的线程。 如果阻塞了线程池线程,可能会导致服务器无法处理更多请求,造成急剧性性能下降。 尤 阅读全文
posted @ 2025-02-10 09:26 chester·chen 阅读(659) 评论(1) 推荐(6) 编辑
摘要: 在 C# 中,Task.Run 是用来在后台线程中执行异步任务的一个常见方法。 它非常适用于需要并行处理的场景,但如果不加以谨慎使用,可能会导致额外的线程池调度,进而影响程序的性能。 什么是线程池? 线程池是 .NET 中的一种优化机制,它通过复用固定数量的线程来减少线程创建和销毁的开销。 线程池中 阅读全文
posted @ 2025-02-09 09:06 chester·chen 阅读(824) 评论(8) 推荐(5) 编辑
摘要: 什么是IAsyncEnumerable IAsyncEnumerable<T> 是 .NET 中用于表示异步数据流的接口。 它允许你逐个异步地获取数据项,而不是将所有数据一次性加载到内存中。这样可以减少内存占用,尤其在处理大量数据时更加高效。 与 IEnumerable<T> 不同,IEnumera 阅读全文
posted @ 2025-02-08 11:56 chester·chen 阅读(637) 评论(2) 推荐(4) 编辑
摘要: 引言 在现代 Web API 开发中,我们经常需要对资源进行部分更新(Partial Update)。传统的 PUT 请求会要求发送整个对象,而 PATCH 请求可以仅发送需要更新的字段。ASP.NET Core 提供了 JsonPatchDocument<T> 来简化这一操作。 什么是 JsonP 阅读全文
posted @ 2025-02-06 09:06 chester·chen 阅读(576) 评论(2) 推荐(0) 编辑
摘要: BeginScope 方法是 .NET 中 ILogger 接口的一部分,用于创建日志记录的作用域(Scope)。这种作用域可以将特定的上下文信息包含在日志中,从而提高日志的可读性和调试效率。 配置日志包含作用域信息 首先,需要在日志配置中启用包含作用域信息。以 appsettings.json 为 阅读全文
posted @ 2025-01-21 09:11 chester·chen 阅读(577) 评论(1) 推荐(5) 编辑
摘要: AsyncLocal<T>是一个在.NET中用来在同步任务和异步任务中保持全局变量的工具类。 它允许你在不同线程的同一个对象中保留一个特定值,这样你可以在不同的函数和任务中访问这个值。 这是在实现异步任务中维持一致性和优雅性的一种重要手段。 用法 创建一个AsyncLocal实例: 你可以使用Asy 阅读全文
posted @ 2025-01-10 15:24 chester·chen 阅读(620) 评论(2) 推荐(9) 编辑
摘要: 1. 什么是 Tesseract Tesseract 是一个强大的字符识别 (OCR) 工具。它最初由 HP 发布,现在由 Google 和学术社区共同维护和开发。 Tesseract 支持多种语言和格式,能够高效地识别图片中的文字。 2. 如何安装 Tesseract 要在 .NET 项目中使用 阅读全文
posted @ 2025-01-08 08:46 chester·chen 阅读(1939) 评论(6) 推荐(19) 编辑
摘要: Scoop是什么? Scoop 是一个基于 Windows 的包管理器,能够帮助开发者高效管理开发环境和应用程序。 它推荐通过命令行进行包的安装、更新和卸载,同时提供了简单易用的包组织方式,透明化了安装和管理的过程。 与传统的 Windows 应用安装比较,Scoop 允许用户使用命令行将应用安装到 阅读全文
posted @ 2024-12-27 08:09 chester·chen 阅读(557) 评论(0) 推荐(5) 编辑
摘要: 在 .NET 9 的更新中,微软增强了原生 OpenAPI。这一变化表明 .NET 正在更加拥抱开放标准,同时让开发者体验更加轻松高效。本文将探讨为何进行这一更改、OpenAPI 的优势,以及如何在 .NET 9 中使用 OpenAPI。 为什么不再内置 Swagger? 1. 标准化的需求 Swa 阅读全文
posted @ 2024-12-25 09:21 chester·chen 阅读(1753) 评论(8) 推荐(4) 编辑
点击右上角即可分享
微信分享提示