Go 1.6 开发周期可能缩短,或许得益于自举

在经历了几个Beta版本和一个rc版本之后,Go 1.5终于正式发布了。这是一个很重要的版本,实现方面有很多变化。因为这个版本仍然遵循Go 1兼容性承诺,开发团队预计,所有的Go程序应该都可以和以前一样编译和运行。二进制和源码包已提供下载。

在实现方面,最大的变化有以下几点:

编译器和运行时是完全用Go语言编写的(还有少量汇编),实现了自举。实现中不再涉及C语言,所以构建时也就不需要C编译器了。
并发的垃圾收集器,可能的情况下,垃圾收集可以和其他goroutine并发进行,可以极大降低响应时间。
默认情况下,Go程序运行时的GOMAXPROCS会被设置为可用的核数,之前默认为1。
对internal packages的支持扩展到所有repositories,不再是仅供核心包使用。
go命令对vendoring外部依赖提供了实验性支持。
引入了go tool trace命令,支持对程序的执行做细粒度的跟踪。
这些变化背后的具体细节,感兴趣的读者可以关注Tony Bai的博客文章《Go 1.5中值得关注的几个变化》。

更多细节,可以参考发布说明。

另外,Go 1.6也会继续改进GC,具体可以参考相关文档。因为Go 1.5的开发周期较长,Go 1.6的开发周期会比正常周期短一些,代码将于11月1日冻结,预计2016年2月1日发布。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。