当前位置: 首页 > article >正文

core 不可变类型 线程安全 record

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

record 引用类型

资料
微软资料

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

在这里插入图片描述


http://www.kler.cn/a/402835.html

相关文章:

  • RabbitMQ和RocketMQ相关面试题
  • 3D Gaussian Splatting在鱼眼相机中的应用与投影变换
  • uiautomator案例
  • MySQL数据库学习(持续更新ing)
  • 一种简单高效的RTSP流在线检测方法,不需要再过渡拉流就可以获取设备状态以及对应音视频通道与编码格式
  • Python Selenium:Web自动化测试与爬虫开发
  • 杨凌职业技术学院信息工程学院“讯方技术HarmonyOS人才训练营”圆满启动!
  • Harmony鸿蒙类似与Android中broadcast广播的api使用及释义
  • stm32下的ADC转换(江科协 HAL版)
  • java arraycopy() 方法 详解
  • (Mysql)SQL语句全解!!初上手JDBC?不知道怎么敲SQL语句?不知道关键字?来看本篇文章!带你领悟近乎全部的SQL语句!
  • 基于 LangChain4j 实现问答机器人
  • 内容补充页(相关公式解释)
  • C++11————线程库
  • Android Jetpack WorkManager 基础
  • Ubuntu VNC Session启动chromium和firefox报错
  • 03 —— Webpack 自动生成 html 文件
  • Spring Boot项目集成Redisson 原始依赖与 Spring Boot Starter 的流程
  • Vue 3 中 toRaw 的详细讲解
  • 前端:JavaScript (学习笔记)【1】
  • 学习与理解LabVIEW中的格式化写入(Format into String)函数
  • ioDraw Mac客户端安装教程
  • 目录背景缺少vscode右键打开选项
  • 基于xr-frame实现微信小程序的手部、手势识别3D模型叠加和石头剪刀布游戏功能
  • 【蓝桥杯备赛】123(前缀和的复杂应用)
  • 【企业级分布式系统】 Kafka集群