Go 1.8 正式发布,编译时间比 Go 1.7 提高约 15%

今天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 发布前留意。

via:https://blog.golang.org/go1.8

共 2 个回复


playrome

增加了很多诱人的功能,升级到1.8,又返回去了。兼容性有很大的问题。或许是增强GC导致的。
————————时间线———————————-
还是忍不住1.8众多的诱惑,对碰到问题去又进行了分析排查,终于找到了问题所在.还是代码有问题,只是这个有问题的代码在1.7下被兼容了,到1.8就不干活了,这样又可以快乐的使用1.8了.这里澄清一下,不要误导大家.

# 0

focus

请问一下@playrome 出现了什么兼容性的问题?

# 1