首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
dotnet通关秘籍
唐青枫
创建于2024-02-19
订阅专栏
dotnet硬核知识
等 13 人订阅
共104篇文章
创建于2024-02-19
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
C#.NET ConcurrentDictionary<TKey, TValue> 深度解析:原理与实践
简介 ConcurrentDictionary<TKey, TValue> 是 System.Collections.Concurrent 命名空间下的线程安全的键值对集合,专为高并发读写场景设计 —
C#.NET ConcurrentBag<T> 设计原理与使用场景
简介 ConcurrentBag<T> 是 System.Collections.Concurrent 命名空间下的线程安全的无序集合,专为 “多线程同时添加 / 移除元素” 设计,核心特点是基于线程
深入理解 Volatile:C#.NET 内存可见性与有序性
简介 Volatile 是 C# 中处理内存可见性和指令重排序的关键机制,它提供了对内存访问的精细控制。在并发编程中,volatile 关键字和 Volatile 类都是解决共享变量可见性问题的重要工
你真的理解 Interlocked.Exchange 吗?C#.NET 原子操作详解
什么是 Interlocked.Exchange? Interlocked.Exchange 是 System.Threading.Interlocked 类中的静态方法,用于原子地替换(交换)一个变
深入理解 System.Lazy<T>:C#.NET 延迟初始化与线程安全
什么是 Lazy<T>? System.Lazy<T> 是 .NET Framework 4.0 引入(位于 System 命名空间)的泛型类,用于实现线程安全的延迟初始化(Lazy Initiali
深入理解 Interlocked.CompareExchange:C#.NET 原子操作核心原理
什么是 Interlocked.CompareExchange? Interlocked.CompareExchange 是 .NET 中 System.Threading.Interlocked 类
深入理解 Parallel.ForEachAsync:C#.NET 并行调度模型揭秘
简介 不是一次性启动所有任务 是一个 “边消费、边执行、边补位” 的模型 核心设计目标 痛点 ForEachAsync 的解法 Task.WhenAll 不限流 MaxDegreeOfParallel
深入理解 C#.NET Parallel:并行编程的正确打开方式
简介 Parallel 并行编程是 .NET 中利用多核 CPU 进行并发执行的编程模型,主要通过 System.Threading.Tasks 命名空间中的 Parallel 类实现。它允许将任务分
深入理解 C#.NET Interlocked.Increment:原子操作的核心
简介 Interlocked.Increment 是 .NET 中一个重要的线程安全操作方法,用于以原子方式递增变量的值。它位于 System.Threading 命名空间中,提供了一种轻量级的线程同
深入理解 C#.NET IEnumerable<T>:一切集合的起点
简介 IEnumerable<T> 是 .NET 中最核心的接口之一,位于 System.Collections.Generic 命名空间中。它代表一个可枚举的集合,支持在集合上进行迭代操作。 IEn
C#.NET 索引器完全解析:语法、场景与最佳实践
简介 索引器(Indexer)是 C# 中的一种特殊属性,它允许类或结构体像数组一样使用索引语法(例如 obj[0])来访问或修改对象内部的成员。简单来说,它将对象的实例视为“可索引的集合”,提供类似
C#.NET AsyncLock 完全解析:async/await 下的并发控制方案
简介 AsyncLock 是一种自定义的异步互斥锁(Mutex Lock),专为异步编程场景设计,用于在 async/await 方法中实现线程安全的互斥访问。它弥补了 .NET 中传统 lock 语
一篇搞定 dotnet ef:EF Core 常用命令与实战指南
基础知识 项目 说明 EF Core .NET 的 ORM 框架,支持 Code First、Database First。 dotnet ef 一个 CLI 工具,用于管理 EF Core 迁移、数
深入理解 C#.NET record:不可变对象与值语义的现代实践
简介 record 是 C# 9 引入的新引用类型(Reference Type),专门用于数据导向(Data-Oriented)的不可变对象。特别适合用于表示不可变的数据传输对象(DTO)、值对象和
C#.NET struct 全解析:什么时候该用值类型?
简介 struct 是 值类型(Value Type),用于封装一组相关的数据。 与类(class)相比,结构体通常更轻量,适用于小型、短生命周期的对象。 ⚡ 关键特点: 存储在 栈(stack)上(
C#.NET ref struct 深度解析:语义、限制与最佳实践
简介 ref struct 是 C# 7.2 引入的一种特殊结构体类型, 它与普通 struct 的最大区别是 严格限制其分配位置: ref struct 只能分配在栈(stack)上,不能分配在堆(
告别频繁 GC:C#.NET PooledList 的设计与使用场景
简介 PooledList<T> 是 高性能集合类型,由 Collections.Pooled 提供,用于替代 List<T>,通过 对象池 (ArrayPool<T>) 复用内部数组来减少 GC(垃
深入理解 C#.NET 运算符重载:语法、设计原则与最佳实践
简介 运算符重载是 C# 提供的一种特性,允许开发者为 自定义类型(类/结构体) 定义运算符的行为。 例如,可以让 Vector 对象支持 + 运算,而不是仅限于基本类型(int、double 等)。
LINQ 新时代:CountBy、AggregateBy 深度解析(含对比 GroupBy)
简介 在 .NET 8 之前,LINQ 没有内置 CountBy 和 AggregateBy 方法,但在 .NET 9(C# 13) 中,LINQ 正式引入了这两个新扩展方法,极大简化了数据分组和聚合
C# Params Collections 详解:比 params T[] 更强大的新语法
简介 Params Collections 是 C# 12 中引入的新特性,它扩展了传统的 params 关键字功能,使其不仅支持数组,还能支持各种集合类型。这个特性使得方法能够接受可变数量的参数,并
下一页