Go 1.17正式发布,都有哪些新功能?

开发 后端
Go 1.17 增加了对 Windows 上 64 位 ARM 架构的支持,让 Go 开发者能够在更多设备上原生运行 Go。

 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 

 

责任编辑:庞桂玉 来源: 马哥Linux运维
相关推荐

2020-02-20 16:30:22

iOS 13.4苹果iPhone

2021-08-30 08:23:34

Go语言进程

2023-10-20 10:11:00

Nuxt 3.8前端

2024-01-24 13:25:54

2021-10-26 06:43:36

NodeJavaScript引擎

2018-12-06 14:40:07

苹果iOS 12.1.1 iOS 12

2011-03-21 13:52:30

下载webOS SDKwebOS 2.1

2023-03-22 18:07:00

iOS苹果功能

2018-10-20 09:00:00

UbuntuUbuntu 18.1Cosmic Cutt

2019-07-23 07:20:23

苹果 iOS系统

2023-02-06 14:59:27

iOSiOS 16苹果

2021-09-22 08:48:32

iOS应用系统

2022-06-07 14:26:35

iOS苹果功能

2019-01-28 11:24:53

Windows 功能系统

2023-06-28 08:52:36

2018-01-27 21:26:46

谷歌GitHub功能

2020-11-11 21:13:58

dotNET 5.0微软

2020-12-30 09:35:56

安卓微信微信豆新功能

2021-09-05 18:25:30

Go命令仓库

2009-09-22 15:52:30

Windows 7新功磁盘加密Bitlocker
点赞
收藏

51CTO技术栈公众号