Golang 1.9 的新特性

平凡啊菜 · · 5422 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

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 docsdesign document
  • Go 1.9 改进了测试能力,新的 (T).Helper 和 (B).Helper 方法将调用函数标记为测试 helper 函数。 当打印文件和行信息时,该函数将被跳过。 这允许写测试 helper 函数,同时仍然为用户提供有用的行号。
  • sync 包中的新 Map 类型,具有分期偿还 - 常数时间加载,存储和删除的并发 Map。多个 goroutines 可以安全并发的调用它。
    更多信息,请阅读Go1.9特性文档

有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:平凡啊菜

查看原文:Golang 1.9 的新特性

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

5422 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传