PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

最新消息!Go 1.17 正式发布啦!

藏色散人
藏色散人 转载
2021-08-19 14:36:03 3585浏览

下面由go语言教程栏目给大家介绍关于go 1.17 正式发布的消息,希望对需要的朋友有所帮助!

Go 1.17 已正式发布。

ee021264b0cde346f56520550da9c6f.png

此版本改进了编译器,具体来说是采用了一种新的函数参数和结果传递方式。官方称此项变化将 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:https://golang.org/doc/go1.17

下载地址:https://golang.org/dl/

更多golang相关知识,请访问golang教程栏目!

声明:本文转载于:OSC开源社区,如有侵犯,请联系admin@php.cn删除