Google 的 Go语言在下一个版本将提升性能,编译和扩展大型代码库。 Go 1.9 应该在 8 月份发布。
Go 1.9 的创作者希望几乎所有Go程序都像以前一样运行,他们的关注点依然是最新版本中保持兼容性。
这是新功能和改进:
- 垃圾收集器加速,生成更好的代码以及核心库优化应该会使程序运行速度更快一些;
- math/bits 包,这是一个新包,它对操作 bits 进行了优化。该包中的函数被编译器视为内联函数来提高性能;
- Go 1.9 编译器支持并行编译包中的函数,利用多个处理器内核。Go 1.9 保留以前版本的 go 命令支持并行编译单独的包。默认情况下,并行编译是打开的,但可以禁用。
- 为了可扩展性,Go 1.9 增加了对代码修复的 类型别名 的支持。对 Go 语言的更改,类型别名支持代码的渐进式修复,同时支持在程序包之间移动类型。它应该在大规模重构期间辅助代码修复,将引用就包中的类型改为引用新包的类型,这两个类型是一致的。基本上,类别别名的引入提供了一个过渡期,其中 API 可以从新的和旧的包中获得,引用旧的和新的版本可以同时存在。
- Go 1.9 增加了透明单调递增时间(transparent monotonic time)支持,这使得在两个时间值之间的计算持续时间总是安全的,即使是在时钟调整的情况下。相关链接:package docs、design document
- Go 1.9 改进了测试能力,新的 (T).Helper 和 (B).Helper 方法将调用函数标记为测试 helper 函数。 当打印文件和行信息时,该函数将被跳过。 这允许写测试 helper 函数,同时仍然为用户提供有用的行号。
- sync 包中的新 Map 类型,具有分期偿还 - 常数时间加载,存储和删除的并发 Map。多个 goroutines 可以安全并发的调用它。
更多信息,请阅读Go1.9特性文档
有疑问加站长微信联系(非本文作者)