.NET 6 正式发布,迄今为止最快的 .NET


微软宣布 .NET 6 已正式推出,并称其为迄今为止最快的 .NET 版本。

发布公告提到,.NET 6 是首个原生支持 Apple Silicon (Arm64) 的版本,并且还针对 Windows Arm64 进行了改进。.NET 团队构建了一个新的动态配置文件引导优化 (PGO) 系统,该系统可提供仅在运行时才会进行的深度优化。其他变化包括使用 dotnet monitor 和 OpenTelemetry 改进云诊断、提供更强大和更高效的 WebAssembly 支持,以及添加用于 HTTP/3、JSON 处理、数学和直接操作内存的新 API。

作为 LTS 长期支持版本,.NET 6 将会获得 3 年的技术支持。

在 .NET 6 开发周期内,总共包含大约一万个 commit,下面简要介绍新版本的亮点变化。

.NET 6 亮点

  • 使用 Microsoft 服务、其他公司运行的云应用程序和开源项目进行了生产压力测试。
  • 作为最新的长期支持 (LTS) 版本提供三年的技术支持
  • 跨浏览器、云、桌面、IoT 和移动应用程序的统一平台,全部使用相同的 .NET 库,可便捷地共享代码。
  • 性能全面提升,尤其是文件 I/O 的性能,减少了执行时间、等待时间和内存使用。
  • C# 10 带来了语言改进,例如记录结构 (record structs)、隐式使用和新的 lambda 功能,同时编译器添加了增量源代码生成器。 F# 6 新特性包括基于 task 的异步、管道调试和多项性能改进。
  • Visual Basic 在 Visual Studio 体验和 Windows Forms 项目打开体验方面进行了改进。
  • 热重载 (Hot Reload) 支持跳过重新构建和重新启动以查看新更改(当应用程序正处于运行状态),此特性支持在 Visual Studio 2022 中使用,并通过 .NET CLI 为 C# 和 Visual Basic 提供了支持。
  • 云诊断已通过 OpenTelemetry 和 dotnet monitor 进行改进,现在在生产环境中得到支持,并且可用于 Azure 应用服务。
  • JSON API 更强大,并提供源代码生成器器用于串行更高的性能。
  • ASP.NET Core 引入了最少的 API,以简化入门体验并提升 HTTP 服务的性能。
  • Blazor 组件现在可以从 JavaScript 渲染并与现有的基于 JavaScript 的应用程序集成。
  • 用于 Blazor WebAssembly (Wasm) 应用程序的 WebAssembly AOT 编译,以及对运行时重新链接和本机依赖项的支持。
  • 使用 ASP.NET Core 构建的单页应用程序现在使用了更灵活的模式,可以与 Angular、React 和其他流行的前端 JavaScript 框架一起使用。
  • 添加了 HTTP/3 以便 ASP.NET Core、HttpClient 和 gRPC 都可以与 HTTP/3 客户端和服务器交互。
  • 文件 IO 现在支持符号链接,并通过从头开始重新编写FileStream大幅提升了性能。
  • 通过支持 OpenSSL 3、ChaCha20Poly1305 加密方案和运行时纵深防御缓解措施(特别是W^X和CET),安全性得到了提升。
  • 支持为 Linux、macOS 和 Windows(以前仅适用于 Linux)发布单文件应用程序。
  • IL 修剪现在更加强大和有效,提供了新的警告和分析器,可确保正确的最终结果。
  • 添加了源代码生成器和分析器,可帮助生成更好、更安全和更高性能的代码。
  • 源代码构建使 Red Hat 等组织能够从源代码构建 .NET,并向其用户提供自己的构建版本。

相关文章

2022-02-24

20 年前的 2002 年 2 月 13 日,仍高举着闭源大旗的微软正式发布 Visual Studio .NET,时任首席执行官比尔·盖茨将其描述为“第一个用于构建 XML Web 服务和下一代互联网应用程序的完全集成的开发环境”。 它被创造出来的目的

2022-08-06

,.NET 6 不支持这些 hooks 所需的 remoting 和多个 AppDomain。迄今为止,还没有找到可行的替代方案。#9191 删除了 TFS 集成 ( 8190d0c ) 删除了 JIRA 集成(参见:#9659) 详情可查看:https://github.com/gitextensions/gitextensions/releases/t

2022-03-26

) 才能继续接收更新。 .NET 5.0 不是 LTS 版本,因此将在发布 18 个月或下一个版本发布后的 6 个月后停止支持。当 .NET 5.0 支持终止时,使用此版本的应用程序仍可继续运行,但相关的漏洞可能不会获得修复,因为微软只为 .NET

2022-07-14

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

2022-08-11

NuGet 6.3 已发布,NuGet 是 .NET 平台的包管理器,NuGet 客户端工具提供了生成和使用包的能力,可更好地管理项目中的包依赖、包更新等xi'xiang NuGet 6.3 在 Visual Studio 2022 和 .NET 6.0 中开箱即用。也可以将 NuGet 6.3 作为独立的可执行文

2022-07-31

目主要由微软员工通过 .NET 基金会开发,并在 MIT 许可下发布。2020 年 11 月,微软发布了 .NET 5.0。删除了品牌中的 “Core” 一词并跳过了 4.0 版本,以避免与 .NET Framework 混淆。 此次不再受支持的 .NET Core 3.1 版本是微软在 2019 年 1

2021-11-09

微软今天正式发布了 Visual Studio 2022,Visual Studio 2022 的主要功能包括: 64-bit devenv.exe 现在仅支持 64 位 Azure Cloud Services 现在支持 Azure 云服务(经典)和 Azure 云服务(扩展支持)项目 C++ v143 构建工具现在可通过 Visua

2022-05-06

Microsoft PowerToys 是 Windows 系统实用程序,供高级用户调整和简化其 Windows 体验,可最大限度地提高生产力。 该版本主要集中在升级到新的依赖以及为原生 ARM64 构建,以下是该版本的一些重点更新内容: 亮点 大部分用于原生

2022-08-06

NET 社区工具包(.NET Community Toolkit )现已以 8.0.0 版发布! .NET 社区工具包是一组适用于所有 .NET 开发人员,且与任何特定 UI 平台无关的帮助程序和 API。该工具包由 Microsoft 维护和发布,是 .NET 基金会的一部分,它还被多

2022-06-16

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

2022-09-16

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

2022-07-15

先知 / Furion (探索版) 一个应用程序框架,您可以将它集成到任何 .NET/C# 应用程序中。 An application framework that you can integrate into any .NET/C# application. 安装 / Installation Package Manager Install-Package Furion .NET CLI dotnet a

2022-09-23

前言 本期主要对日志性能、远程请求性能还有诸多模块性能进行改进。 项目信息 Gitee:https://gitee.com/dotnetchina/Furion Github:https://github.com/MonkSoul/Furion 文档:https://dotnetchina.gitee.io/furion 本期更新 v4.4.8 版本细

2022-05-26

,允许开发者构建云原生 AI 应用;计划于今年晚些时候正式上市。 “借助 Project Volterra,你将能够通过 Qualcomm Technologies 今天发布的全新 Qualcomm Neural Processing SDK for Windows 工具包探索许多 AI 场景。而且因为我们希望看到 NPU 被内