core 不可变类型 线程安全 record

当一个类型的对象在创建时被指定状态后,就不会再变化的对象,我们称之为不可变类型 。这种类型是线程安全的,不需要进行线程同步,非常适合并行计算的数据共享。它减少了更新对象会引起各种bug的风险,更为安全。
System.DateTime和string就是不可变类型非常经典的代表。

record 引用类型

资料
微软资料

们要用类来创建一个不可变类型,你首先要定义只读字段和属性,并且还要重写涉及相等判断的方法等。在C#9.0中,引入了record,专门用来以最简的方式创建不可变类型的新方式。如果你需要一个行为像值类型的引用类型,你可以使用record;如果你需要整个对象都是不可变的,且行为像一个值,那么你也可考虑将其声明为一个record类型。 那么什么是record类型?

相关推荐
江沉晚呤时6 天前
精益架构设计:深入理解与实践 C# 中的单一职责原则
java·jvm·算法·log4j·.netcore·net
江沉晚呤时8 天前
深入解析 .NET Core 垃圾回收(GC):概念、工作原理与优化策略
java·jvm·算法·c#·asp.net·.netcore·net
江沉晚呤时9 天前
桥接模式(Bridge Pattern)在 .NET Core 中的实现
java·开发语言·后端·c#·.netcore·net
ercom10 天前
Wireshark 的过滤器类型
net
江沉晚呤时13 天前
Markdig:强大的 .NET Markdown 解析器详解
c#·asp.net·.netcore·net
江沉晚呤时13 天前
C# 建造者模式(Builder Pattern)详细讲解
java·开发语言·javascript·数据库·c#·.netcore·net
江沉晚呤时22 天前
在 .NET 8 中使用 JWT 进行身份认证和授权
c#·asp.net·.netcore·net
江沉晚呤时24 天前
Serilog: 强大的 .NET 日志库
c#·asp.net·.netcore·net
知本知至2 个月前
kubuntu24.04配置vmware17.5.1
ubuntu·typora·vmware·net·kubuntu
Ares-Wang2 个月前
Visual Studio 同一解决方案 同时运行 多个项目
net