Go 1.9 正式发布

Go 1.9发布,离上个版本1.8发布,大约6个月时间,是第十个Go 1.x系列发布。包含两个语言的更新,类型别名与混合浮点运算实现。其他的更新主要集中在工具连、运行时和类库。一如既往,保持对1.x版本的兼容承若。我们期望几乎所有的Go程序像之前一样能编译和运行。

Go现在支持类型别名,简单使用方式如下
type T1 = T2

混合浮点运算实现
x*y + z,不会舍入中间结果x*y,如果需要强行舍入中间结果可以这样 float64(x*y) + z

工具的更新
Go 编译器支持并行编译一个包的函数,充分利用计算机的多个核心。并行编译是默认选项,也可以通过设置环境变量GO19CONCURRENTCOMPILATION=0来关闭默认。

go env -json 可以获得JSON格式输出。

运行时更新
像之前的更新一样,这次更新是一次普通的更新,没法用确切的说法关于性能的改善。但是大部分程序会执行的快一点点,这得益于垃圾回收的加速,更好的代码生成和核心类库的优化。

核心类库
添加了新的包,math/bits,经过优化的操作bits的包。

新的并发Map类型位于sync包中,它是线程安全的,能同时被加载,存储,删除。支持多个goroutines并发访问。

更详细的更新,https://golang.org/doc/go1.9
Posted by 何敏 on 2017/08/25 07:30:55