.NET 7 Preview 4 发布 支持所有Linux系平台


.NET 7 发布了第 4 个预览版。

重要变化一览

  • 增强 OpenTelemetry 的 .NET 实现的可观测性
  • 为日期和时间结构体增加微秒和纳秒属性
  • 为缓存扩展(caching extensions)引入新指标
  • 提升“On Stack Replacement”性能
  • 增加新的 tar API
  • 优化 .NET 7 中正则表达式的性能、增加功能

为 TimeStamp、DateTime、DateTimeOffset 和 TimeOnly 添加微秒和纳秒属性

在 Preview 4 之前,各种日期和时间结构体中,可用的最小时间增量是 Ticks 属性中可用的“tick”。在 .NET 中,一个 tick 是 100ns。此前开发者必须对"tick"值执行计算以确定微秒和纳秒值。现在,Preview 4 通过在日期和时间实现中引入微秒和毫秒来解决这个问题。

增加新的 tar API

此版本添加了新的程序集,包含可读取、写入、归档和提取 tar 存档的跨平台 API。

使用示例

// Generates a tar archive where all the entry names are prefixed by the root directory 'SourceDirectory'
TarFile.CreateFromDirectory(sourceDirectoryName: "/home/dotnet/SourceDirectory/", destinationFileName: "/home/dotnet/destination.tar", includeBaseDirectory: true);

// Extracts the contents of a tar archive into the specified directory, but avoids overwriting anything found inside
TarFile.ExtractToDirectory(sourceFileName: "/home/dotnet/destination.tar", destinationDirectoryName: "/home/dotnet/DestinationDirectory/", overwriteFiles: false);
// Generates a tar archive where all the entry names are prefixed by the root directory 'SourceDirectory'
using MemoryStream archiveStream = new();
TarFile.CreateFromDirectory(sourceDirectoryName: @"D:SourceDirectory", destination: archiveStream, includeBaseDirectory: true);

// Extracts the contents of a stream tar archive into the specified directory, and avoids overwriting anything found inside
TarFile.ExtractToDirectory(source: archiveStream, destinationDirectoryName: @"D:DestinationDirectory", overwriteFiles: false);

为缓存扩展 (caching extensions) 引入新指标

此版本为IMemoryCache添加了指标支持,主要的 API 包括:

  • MemoryCacheStatistics 用于记录命中/未命中/估算缓存大小的数据,以及针对IMemoryCache的计数
  • GetCurrentStatistics:返回MemoryCacheStatistics实例,当TrackStatistics flag 未启用则返回 null。该库内置了可用于MemoryCache的实现

详情查看发布公告。


相關推薦

2022-08-17

deepin 23 Preview 已正式发布,预览版属于 V23 阶段性版本,囊括三大核心特性: 独立上游,构建全新的仓库 原子更新 自研包格式 注意,此次发布版本暂不支持 V20 跨版本升级。 玲珑 deepin自研软件包格式,致力于治理

2022-04-15

NET 7 Preview 3 已发布, .NET 7 的第三个预览版包括对可观察性、启动时间、代码生成、GC 区域、Native AOT 编译等方面的增强。 Native AOT 编译 Native AOT 的主要优势在于启动时间、内存使用、访问受限平台(不允许 JIT)以及磁盘

2022-06-30

相关的脚本语言和一个处理 cmdlets 的框架。 PowerShell v7.3 Preview 5 发布,更新内容如下: 引擎更新和修复 改进类型推理和补全(#16963) 使Out-String和Out-File保持字符串输入不变 (#17455) 使AnsiRegex能够捕获 Hyperlink ANSI 序列 (#174

2022-08-12

NET 7 发布了最后一个预览版 Preview 7,在此之后将会进入 RC 阶段。 此版本主要变化包括对 System.LINQ、Unix 文件权限、底层结构、p/Invoke 源代码生成、代码生成和 websocket 的改进。 优化System.LINQ System.Linq现在包含Order和OrderDescen

2022-07-14

NET 7 发布了第 6 个预览版。 主要变化包括: 改进 Generic Math,方便 API 作者的使用 为 ML.NET 引入新的 Text Classification API,增加了最先进的深度学习技术对于自然语言处理 对源代码生成器的多项改进 用于 Re

2022-06-16

NET 7 发布了第 5 个预览版。 主要变化包括: 改进 Generic Math,方便 API 作者的使用 为 ML.NET 引入新的 Text Classification API,增加了最先进的深度学习技术对于自然语言处理 对源代码生成器的多项改进 用于 Reg

2022-08-11

为 Linux 重新启用签名的 NuGet 包验证 #7688 从 Preview 7 开始,在 .NET 7 SDK Linux 版本中默认启用签名 NuGet 包验证。 确保启用 HTTPS  引入了一个新的 NU1803 警告,在使用非 HTTPS 来源时发出提醒。 从 PackageRefere

2022-10-17

最新候选版本 (RC)发布,该版本已通过 Visual Studio 17.4 Preview 3测试,并在生产环境中得到支持。 点此下载适用于 Windows、macOS 和 Linux 的 .NET 7 RC2。如需在 Visual Studio 系列产品中试用 .NET 7,建议使用预览通道构建。 如果使用 mac

2022-07-21

相关的脚本语言和一个处理 cmdlets 的框架。 PowerShell v7.3 Preview 6 发布,更新内容如下: 常规 Cmdlet 更新和修复 修复 Export-PSSession 在为 -OutputModule 指定有根的路径时不抛出错误 改变 ConvertFrom-Json -AsHashtable

2023-03-04

27 #I6HM7T 突破性变化 [升级] 适配 .NET8 Preview.1 4.8.7 ⏱️2023.02.22 [升级] 脚手架支持创建 .NET8 Preview.1 项目 4.8.7 ⏱️2023.02.22 问题修复 [修复] 审计日志 LoggingMonitor 对特

2022-09-30

预览版。 下载地址:https://visualstudio.microsoft.com/vs/mac/preview/ 主要变化 可通过单击来重新启动调试 新版本增加了一个方便的功能,开发者只需点击一次按钮即可重新启动调试。如下图所示,工具栏上的圆形箭头 icon 就

2023-03-14

27 #I6HM7T 突破性变化 [升级] 适配 .NET8 Preview.1 4.8.7 ⏱️2023.02.22 [升级] 脚手架支持创建 .NET8 Preview.1 项目 4.8.7 ⏱️2023.02.22 问题修复 [修复] 定时任务服务在停止进程时会卡住&

2022-08-24

Visual Studio 2022 17.4 上周发布了首个预览版 (Preview 1)。 下载地址:https://visualstudio.microsoft.com/zh-hans/vs/preview/ 在推出正式版之前,开发团队还会持续添加更多对 Arm64 的支持。 官方表示,Visual Studio 2022 17.4 GA 将是首个正式原生

2022-09-16

ps://dotnetchina.gitee.io/furion 准备工作 早就在 .NET7 发布 Preview 版本的时候,Furion 团队就着实进行适配,前前后后耗时4个多月解决了 .NET5 升级到 .NET6、.NET7 的所有问题,保证一套代码兼容 .NET5+,支持现有的所有 Furion 版本升级