前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Go 1.10 发布说明草案:预计于 2018 年 2 月发布

Go 1.10 发布说明草案:预计于 2018 年 2 月发布

作者头像
Debian中国
发布2018-12-20 15:05:43
4590
发布2018-12-20 15:05:43
举报
文章被收录于专栏:Debian中国Debian中国

Go 1.10 还没发布,下面将简单介绍正在进行中的 Go 1.10 发布说明草案。Go 1.9 已于 2017 年 8 月发布,最新的 Go 1.10 预计将于 Go 1.9 发布六个月后 —— 2018 年 2 月发布。

Go 1.10 大部分的变更仍然集中在工具链、运行时和库的实现上。一如既往地,此版本依然会 保持与 Go 1.x 的兼容性 ,官方表示几乎所有的 Go 应用程序都能像以前一样继续编译和运行。

语言特性方面的改变

语言特性方面没有实质性的变化。

极端情况下,由无类型常量引起的变化已经弄清楚。因此,编译器也已进行升级,它可允许这样的索引表达式 x[1.0 << s] 通过编译,其中 s 是一个无类型常量。go/types 包也已完善。

代码语言:txt
复制
     (adsbygoogle = window.adsbygoogle || []).push({}); 

方法表达式的语法 (grammar) 也已进行更新,它将会放松语法 (syntax) 的规则来允许任何类型表达式作为接收方,这与编译器已经实现的特性相匹配。例如 struct{io.Reader}.Read,如果编译器已经接受并且现在被语言语法所允许,它是一个有效的表达式。

运行时

TODO:不从 Go 没有创建的锁定线程或线程中启动新线程。LockOSThread/UnlockOSThread 现在是嵌套的。LockOSThread + return 可杀掉线程。

堆栈跟踪不再包含隐式封装函数(以前被标记为 <autogenerated>),除非封装本身出现错误。

GOMAXPROCS 设置不再有限制(在 Go 1.9 中,限制是 1024)

性能

性能方面的改变较多。由于垃圾收集器的加速,将会生成更好的代码以及核心库中的优化。此外,大多数程序运行速度将会更快一些。

核心库

标准库的改动较小,bytes 和 net/url 中的变化最有可能要求对现有的程序进行更新。

总的来说,更新的内容涉及到语言特性、Port、工具、运行时、性能、垃圾收集器以及核心库这些方面,其中主要是对工具的更新。点此查看详细内容

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-11-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 语言特性方面的改变
  • 运行时
  • 性能
  • 核心库
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档