.NET 9 预览版 5 发布
微软在6月发布了.NET 9预览版的第五个版本。这个新版本的框架预计将在今年晚些时候正式发布,它是一个标准支持(STS)版本,将在2024年11月12日至2026年5月12日期间在多个操作系统上获得18个月的支持。这个预览版带来了性能改进和一些新特性,例如增强的AI能力、优先级无界通道、SearchValues的子字符串搜索,以及在OpenTelemetry中更灵活的活动链接。
其中一个最重要的特性是AI能力的扩展,包括TensorPrimitives和Tensor<T>类型的更新版本。TensorPrimitive类提供了对数值操作的静态方法,其方法覆盖范围从.NET 8的40个增加到大约200个。新引入的Tensor<T>类型旨在提供与AI库(如ML.NET)的高效互操作性,并支持数据操作,如索引和切片。
另一个有趣的更新是优先级无界通道。无界通道是指没有存储项目数量限制的线程通道。新引入的优先级通道通过在System.Threading.Channels库中添加CreateUnboundedPrioritized<T>方法来提供,该通道按Comparer<T>.Default或提供的自定义IComparer<T>对元素进行排序。
此外,.NET 8中引入的SearchValues类型现在支持在更大的字符串中搜索子字符串,这是利用底层平台SIMD支持的优化实现。OpenTelemetry活动链接现在通过添加System.Diagnostics.Activity.AddLink方法变得更加灵活。
其他更新包括用于Task的新API,特别是新的Task.WhenEach方法,它允许使用await foreach循环遍历任务,直到它们完成。还包括对TypeDescriptor类的修剪支持,一个新的TypeName类用于解析ECMA-335类型名,以及params的Span重载的更好性能。
ASP.NET Core 9预览版的第五个版本的这个更新主要集中在优化静态网络资产的交付和改善Blazor Server的重连体验上,同时还引入了用于运行时检测组件渲染模式的新特性以及其他各种改进,旨在简化开发并提升用户体验。
主要改进包括:
静态网络资产交付优化:新的
MapStaticAssetsAPI旨在大多数情况下替代UseStaticFiles。它针对在构建和发布时已知的资产进行优化,使用gzip和brotli压缩,减少资产大小并提高用户加载时间。Blazor Server重连体验改善:Blazor Server应用需要实时连接才能正常工作。新变化引入了指数退避策略进行重连尝试,快速开始并逐渐引入延迟。
运行时检测组件渲染模式:ComponentBase类现在包括一个Platform属性,即将更名为RendererInfo,具有Name和IsInteractive属性。这些属性帮助开发者了解组件运行的位置以及是否可交互。
简化Blazor Web应用的认证状态序列化:新的API使得向现有项目添加认证变得更加容易。
新的.NET MAUI Blazor混合和Web解决方案模板:这个模板简化了创建针对Android、iOS、Mac、Windows和Web的应用,同时最大化代码重用,并自动为Blazor Web应用和.NET MAUI Blazor混合应用设置项目。
.NET 9 MAUI预览版的第五个版本的这个更新带来了新的.NET MAUI Blazor混合和Web应用项目模板,以及对Android API 35 Beta 2的支持,同时在Android平台上对性能和应用大小进行了优化。
新引入的.NET MAUI Blazor混合和Web解决方案模板简化了创建针对Android、iOS、Mac、Windows和Web的应用,同时最大化代码重用,并自动为Blazor Web应用和.NET MAUI Blazor混合应用设置项目。值得注意的是,MAUI Blazor混合应用在目标设备上使用WebView和Blazor移动视图进行渲染,并不是一个完全成熟的本地应用。
对于非Blazor MAUI应用在Android上的运行,预览版5带来了大约15%的启动时间性能提升。为了实现这一点,代码默认使用LLVM marshall方法,修改汇编代码以使用LLVM marshalling结构。对于MAUI Blazor应用在Android上,团队发现了一个导致应用程序挂起的问题,并正在调查根本原因。因此,如果项目针对Blazor应用,则禁用此性能优化。
随着Android 15 Beta计划的进展,.NET 9 MAUI预览版5增加了对Android API 25 Beta 2的绑定,对应于Android 15 Beta 2的发布。读者可以在Android Developers网站上找到Android API 25 Beta 2的完整更改日志。
此外,还添加了大小修剪增强功能,以在发布编译模式下减少编译后的应用大小。可以在项目文件中禁用此功能。
iOS上.NET MAUI实现的增强主要集中在修复错误和改进构建质量上。
完整的发布说明可以在GitHub官方MAUI仓库中找到。此外,GitHub上还提供了所有五个.NET 9预览版中MAUI更改的完整列表。
.NET 9 预览版 5 发布的更多相关文章
- 消息:SQL Server 2017(vNext)的第三个公开的CTP(社区技术预览版)发布了
今天看到了一个新闻,跟大家分享一下,有兴趣的可以去尝试一下. SQL Server 2017 CTP3于5月23日发布了,详细版本号是6.7.55.0. 大家可以去安装试试.在下载页面,目前是SQL ...
- 微软.NET CORE 3.0 预览版 7 发布:大幅减少 SDK 空间大小
据悉,这个预览版是 .Net Core 3 中重要的版本,可以视为原计划在 7 月发布的 RC 版本 (引自微软 .NET Core 首席 Program Manager Richard 先生原话), ...
- .NET 5.0预览版6发布:支持Windows ARM64设备
2020年6月25日,微软dotnet团队在博客宣布了第六个 .NET 5.0 的预览版:https://devblogs.microsoft.com/dotnet/announcing-net-5- ...
- .NET 6 预览版 5 发布
很高兴.NET 6 预览版5终于跟大家见面了.我们现在正处于.NET 6 的后半部分,开始整合一些重要的功能. 例如.NET SDK 工作负载,它是我们.NET 统一愿景的基础,可以支持更多类型的应用 ...
- .NET 6 预览版 7 发布——最后一个预览版
原文:bit.ly/2VJxjxQ 作者:Richard 翻译:精致码农-王亮 说明:文中有大量的超链接,这些链接在公众号文章中被自动剔除,一部分包含超链接列表的小段落被我删减了,如果你对此感兴趣,请 ...
- HarmonyOS 3.0.0开发者预览版全新发布
2021年10月22日在华为开发者大会HDC.Together 2021 主题演讲上,我们发布了HarmonyOS 3.0.0开发者预览版,主要内容包括:Harmony设计系统.ArkUI 3.0.A ...
- .NET 7 预览版 1 发布
宣布 .NET 7 预览版 1 Jeremy 2022 年 2 月 17 日 今天,我们很高兴地宣布 .NET 历史上的下一个里程碑.在庆祝社区和 20 年创新的同时,.NET 7 Preview 1 ...
- 传Windows 9预览版今秋发布
据ZDNet长期关注微软动态的资深人士玛丽•乔•弗利(Mary Jo Foley)称,Windows 9预览版将会在9月或者10月推出.按照这一进度,代号为“Threshold’”的Windows 9 ...
- 宣布发布全新的 Windows Azure 缓存预览版
全新 Windows Azure 缓存的预览版现已发布.此托管服务可以提供闪电般的数据访问速度,以帮助您构建更具可伸缩性.响应更快的应用程序. 详情如下: · 托管式缓存:这一全新的托管服务为需 ...
- 实时人工智能:微软发布Project Brainwave预览版 现场可编程门阵列(Field Programmable Gate Array,简称FPGA) 硬件设计可以迅速演进
https://mp.weixin.qq.com/s/bAPiPURZd-YsbV5PbzwpQQ 编者按:随着各大公司对于数据计算的要求越来越高,实时AI成为了研究者们关注的重点.在美国西雅图举行的 ...
随机推荐
- avue-crud字段之间的动态交互效果以及接口数据的获取赋值
一.form表单下拉表单类型字段数据获取 1.通过配置系统字典接口获取数据并渲染 { label: "经纪人", prop: "broker", type: & ...
- 复现禅道V17.4的sql注入漏洞
漏洞详情 简述:禅道是第一款国产的开源项目管理软件,它的核心管理思想基于敏捷方法 scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理.计划管理.发布管理.文档管理.事务管理等功 ...
- 深入学习Semantic Kernel:创建和配置prompts functions
引言 上一章我们熟悉了一下 Semantic Kernel 的理论知识,Kernel 创建以及简单的Sample熟悉了一下 SK 的基本使用.在Semantic Kernel中的 kernel fun ...
- vue-element-admin 运行踩坑笔记
npm WARN deprecated svgo@1.3.2: This SVGO version is no longer supported. Upgrade to v2.x.x. npm E ...
- java jdbc 得到像C#里的datatable一样的表格
public ArrayList<ArrayList<String>> getDataTale2(String sql) throws SQLException { Array ...
- wxPython==4.2.1 aui.AuiToolBar 如何去掉烦人的抓手?
aui.AuiToolBar 如何去掉烦人的抓手? 最近在用wxPython做一些GUI小应用,发现工具栏总有几个点(抓手),很影响美观,如下: 目前官方没有提供隐藏抓手的功能,需要更改源码的auib ...
- 关于Zotero组件在office word中的添加
引言:学姐问我,怎么弄Zotero,在调试过程中遇到的问题及解决方案 Q&A Zotero的安装 找到官网(https://www.zotero.org/)点击download,安装(个人觉得 ...
- Qt信号与槽的使用
参考视频:黑马程序员https://www.bilibili.com/video/BV1XW411x7NU?p=4 1 新建工程 先创建一个控件基础工程,创建后的界面如下: 主函数我们不需要修改,就 ...
- c# .net mvc 使用百度Ueditor富文本框上传文件(图片,视频等)
使用背景: 项目中需要用的富文本框去上传视频,图片的话大部分都是可以的.相对来说,国外的富文本框很成熟.但鉴于文档是英语,这里使用了百度的富文本框. 采用的api的方式,调用接口进行上传文件.话不多说 ...
- Asp.Net 单点登录(SSO)|禁止重复登陆|登录强制下线
背景: 先上个图,看一下效果: SSO英文全称Single Sign On(单点登录).SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.它包括可以将这次主要的登录映射到其 ...