架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2487|回复: 3

[资料] 20 个 .NET 6 新增的 API

[复制链接]
发表于 2022-9-25 13:10:24 | 显示全部楼层 |阅读模式
DateOnly & TimeOnly

.NET 6 引入了两种期待已久的类型 - DateOnly 和 TimeOnly, 它们分别代表DateTime的日期和时间部分。


Parallel.ForEachAsync

它可以控制多个异步任务的并行度。


ArgumentNullException.ThrowIfNull()

ArgumentNullException 的小改进, 在抛出异常之前不需要在每个方法中检查 null, 现在只需要写一行, 和 response.EnsureSuccessStatusCode(); 类似。


PriorityQueue

.NET 6 新增的数据结构, PriorityQueue, 队列每个元素都有一个关联的优先级,它决定了出队顺序, 编号小的元素优先出列。


RandomAccess

提供基于偏移量的 API,用于以线程安全的方式读取和写入文件。


PeriodicTimer

认识一个完全异步的“PeriodicTimer”, 更适合在异步场景中使用, 它有一个方法 WaitForNextTickAsync。


Metrics API

.NET 6 实现了 OpenTelemetry Metrics API 规范, 内置了指标API, 通过 Meter 类创建下面的指标

• Counter
• Histogram
• ObservableCounter
• ObservableGauge

使用的方法如下:


检查元素是否可为空的反射API

它提供来自反射成员的可空性信息和上下文:

• ParameterInfo 参数
• FieldInfo 字段
• PropertyInfo 属性
• EventInfo 事件


ProcessId & ProcessPath

直接通过 Environment 获取进程ID和路径。


Configuration 新增 GetRequiredSection()

和 DI 的 GetRequiredService() 是一样的, 如果缺失, 则会抛出异常。


CSPNG 密码安全伪随机数生成器

您可以从密码安全伪随机数生成器 (CSPNG) 轻松生成随机值序列。

它对于以下场景中很有用:

• 密钥生成
• 随机数
• 某些签名方案中的盐


Native Memory API

.NET 6 引入了一个新的 API 来分配本机内存, NativeMemory 有分配和释放内存的方法。


Power of 2

.NET 6 引入了用于处理 2 的幂的新方法。

• 'IsPow2' 判断指定值是否为 2 的幂。
• 'RoundUpToPowerOf2' 将指定值四舍五入到 2 的幂。


WaitAsync on Task

您可以更轻松地等待异步任务执行, 如果超时会抛出 “TimeoutException”


新的数学API

新方法:

• SinCos
• ReciprocalEstimate
• ReciprocalSqrtEstimate

新的重载:

• Min, Max, Abs, Sign, Clamp 支持 nint 和 nuint
• DivRem 返回一个元组, 包括商和余数


CollectionsMarshal.GetValueRefOrNullRef

这个是在字典中循环或者修改结可变结构体时用, 可以减少结构的副本复制, 也可以避免字典重复进行哈希计算,这个有点晦涩难懂,有兴趣的可以看看这个

https://github.com/dotnet/runtime/issues/27062


ConfigureHostOptions

IHostBuilder 上的新 ConfigureHostOptions API, 可以更简单的配置应用。


Async Scope

.NET 6 引入了一种新的CreateAsyncScope方法, 当您处理 IAsyncDisposable 的服务时现有的CreateScope方法会引发异常, 使用 CreateAsyncScope 可以完美解决。


加密类简化

• DecryptCbc
• DecryptCfb
• DecryptEcb
• EncryptCbc
• EncryptCfb
• EncryptEcb


(完)





上一篇:【性能优化】SQL Server 关闭输出受影响的行数
下一篇:【WebView2】(一)初识 Microsoft Edge WebView2 技术
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2022-9-26 09:56:13 | 显示全部楼层
跟着Z哥的步伐,嫖一把。
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2022-9-26 16:44:25 | 显示全部楼层
跟着小渣渣的步伐,嫖一把。
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2022-10-8 15:03:10 | 显示全部楼层
学习学习
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-4-27 12:07

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表