今天 Go 团队很高兴地宣布 Go 1.8 发布了。现已提供下载。整个标准库有了显著的性能提升和变化。该版本主要的更新内容如下:
Go 1.7 中为 64 位 x86 引入的编译器后端现在用于所有体系结构,这些体系结构将会有显著的性能改进。例如,我们的基准程序所需的 CPU 时间在 32 位 ARM 系统上减少了 20-30 %。在此版本中, 64 位 x86 系统还有一些性能改进,编译器和链接器更快了,编译时间应该比 Go 1.7 提高约 15 %。但是在这一领域还有很长的路要走:我们希望在未来版本中实现更快的编译速度。
垃圾收集暂停时间明显更短,通常在 100 微秒以下,有时候甚至低至 10 微秒。
HTTP 服务器添加对 HTTP/2 Push 的支持,允许服务器抢先发送响应到客户端。这对于通过消除往返行程来最小化网络延迟非常有用。 HTTP 服务器现在还支持正常关机了,允许服务器通过在服务所有正在运行的请求之后关闭,而最小化停机时间。
上下文(添加到 Go 1.7 中的标准库)提供了取消和超时机制。 Go 1.8 在标准库中添加了更多对上下文的支持,包括数据库 / sql 和 net 包以及 net / http 包中的 Server.Shutdown 。
现在使用新添加的 Slice 函数在排序包中对切片进行排序更简单。例如,要通过“名称”字段对结构体片段进行排序:
sort.Slice ( s , func ( i , j int ) bool {return s [i] .Name <s [j] .Name})
更多新版本的添加、改进和修复内容,以及上面列出的改进的详细信息请查看 Go 1.8 发行说明。
为了庆祝发布,世界各地的 Go 用户组都在本周举办庆祝会,这已经成为 Go 社区的一个传统,所以如果你错过了这一次,那么请在 GO 1.9 发布前留意。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.