Go 1.17 正式发布
Go 1.17 已正式发布。
此版本改进了编译器,具体来说是采用了一种新的函数参数和结果传递方式。官方称此项变化将 Go 程序的性能提升了大约 5%,并将 amd64 平台的二进制包大小减少了大约 2%,未来还计划支持更多平台。
Go 1.17 还增加了对 Windows 上 64 位 ARM 架构的支持,让 Go 开发者能够在更多设备上原生运行 Go。
新版本还增加了 pruned module graphs 功能。官方对此功能的描述为,当 Modules 在其go.mod
文件中指定了go 1.17
或更高版本,其 module graph 只包括其他 Go 1.17 模块的直接依赖,而不是其全部的横向依赖。这将有助于避免go.mod
为其他不相关的依赖下载或读取文件,从而在日常开发中节省时间。
语言方面,Go 1.17 包含三个针对语言特性的改进:
- 支持从 slice (切片)到数组指针的转换
unsafe.Add
:unsafe.Add(ptr, len)
将len
添加ptr
并返回更新的指针unsafe.Pointer(uintptr(ptr) + uintptr(len))
unsafe.Slice
: 对于*T
类型的ptr
表达式,unsafe.Slice(ptr, len)
返回一个[]T
类型的切片,其底层数组从ptr
开始, 其长度和容量为len
- ……
其他的更新内容包括一些功能改进和错误修复,例如针对 crypto/x509 的验证改进,以及对 URL 查询解析的更改。详情查看完整 release note。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
CKEditor 4.16.2 发布,修复浏览器兼容性问题
CKEditor 4.16.2 维护版本已发布。此版本是一个维护版本,更新内容包括修复安全问题、修复浏览器兼容性问题、升级与 React 的集成,以及修复其他重要问题。 修复安全问题 修复了剪贴板插件中的安全漏洞 (CVE-2021-32809),该漏洞会引起出现滥用粘贴功能(使用格式错误的 HTML)的情况,进而导致将任意的 HTML 注入编辑器。 此外,在Widget插件中发现的另一个漏洞 (CVE-2021-32808) 容易导致出现执行 JavaScript 代码的情况,以及 Fake Objects 插件由于容易注入格式错误的 Fake Objects HTML (CVE-2021-37695),这也可能会导致执行 JavaScript 代码。 修复浏览器兼容性问题 此版本针对多款浏览器引入了多项错误修正和增强功能,确保跨平台兼容性,以提供最便捷的使用体验。 修复在 Chrome 中显示空格键无效的问题。在删除两个连续空格的其中一个后,剩下的一个会直接以字符的形式( )显示,而非一个空格。最新的版本修复了这个问题,现在可以按预期运行。 为所有支持的 Inte...
- 下一篇
.NET 6 Preview 7 发布
.NET 6 Preview 7 现已。这是发布 RC 版本之前的最后一次预览。本次更新包括对各种功能的最后一点润色,以及一次性的大型功能发布,并且受 Visual Studio 2022 Preview 3 支持。 .NET SDK:现代化的 C# 项目模板 该版本更新了 .NET SDK 模板以使用最新的 C# 语言功能和模式。新模板中使用了以下语言功能: Top-level 语句 异步Main 全局 using 指令(通过 SDK 驱动的默认值) 文件范围的命名空间 目标类型的新表达式 可空引用类型 通过项目模板启用这些功能,新代码可以从启用这些功能开始,但升级时现有代码不受影响。 var builder = WebApplication.CreateBuilder(args); var app = builder.Build(); if (app.Environment.IsDevelopment()) { app.UseDeveloperExceptionPage(); } app.MapGet("/", () => "Hello World!"...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- 设置Eclipse缩进为4个空格,增强代码规范
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2全家桶,快速入门学习开发网站教程
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS8编译安装MySQL8.0.19