Go语言将使用Go代替C重写运行时环境_最新动态_新闻资讯_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 新闻资讯 > 最新动态 > Go语言将使用Go代替C重写运行时环境

Go语言将使用Go代替C重写运行时环境

 2014/9/3 12:40:50    程序员俱乐部  我要评论(0)
  • 摘要:英文原文:Go’sruntimeCtoGorewrite,bythenumbersGo1.4的合并窗口在9月份将关闭,从现在开始到12月份发布Go1.4之前将只接受bug修复和小调整。Go1.4最主要的变化是将使用Go语言本身来重写Go的运行时,而之前是采用C语言开发。这也是为什么Go的发行版中包含一个C编译器的原因。使用Go重写的好处是:当前如果在Goroutine的调用堆栈中发现C代码,runtime将在需要增长堆栈时回滚到老的堆栈方法。如果使用Go来重写runtime
  • 标签:使用 运行 Go语言
class="topic_img" alt=""/>

  英文原文:Go’s runtime C to Go rewrite, by the numbers

  Go 1.4 的合并窗口在 9 月份将关闭,从现在开始到 12 月份发布 Go 1.4 之前将只接受 bug 修复和小调整。

  Go 1.4 最主要的变化是将使用 Go 语言本身来重写 Go 的运行时,而之前是采用 C 语言开发。这也是为什么 Go 的发行版中包含一个 C 编译器的原因。

  使用 Go 重写的好处是:

  • 当前如果在 Goroutine 的调用堆栈发现 C 代码,runtime 将在需要增长堆栈时回滚到老的堆栈方法。如果使用 Go 来重写 runtime,那么堆栈拷贝的方法就会更加高效。
  • 目前转换工作只计划转 Go 编译器 (5g, 6g, 8g), 而不是 C 编译器,降低运行时中的 C 代码行数,甚至可能完全清除。

  注意

  1. 这是 golang.org 分发版,也就是 gc ,而不是 gccgo。
  2. 这是不同的 C 编译器,gc 工具链将使用你系统的 C 编译器来编译,gc 运行时则使用它的 C 编译器来编译。
  3. 8 月 20 日后增加的转换行可能跟 this request 有关。
发表评论
用户名: 匿名