首页 > 代码库 > golang 1.3的新特征和目前进度

golang 1.3的新特征和目前进度

原文:

计划中的新特征:http://golang.org/s/go13todo

目前的进展情况:http://talks.golang.org/2014/go1.3.slide

golang 1.3代码将在3.1冻结,6.1发布。

1、100% percise GC

GC是垃圾回收器,percise GC不知道什么意思,应该是能够提升性能吧

2、copying stack

使用copy stack代替原来的split stack,解决所谓的“hot split”问题。

3、一系列的性能提升:

  1. page size增加到8k(GC暂停时间降低10%)
  2. 批量分配goroutine id(goroutine创建时间缩短8-66%)
  3. work queue使用无锁ring
  4. 移除netpoll hotpath的锁
  5. 等等

4、重写channel

重写之后部分操作的性能得到提升,提升情况可以参考下面的链接:

https://docs.google.com/document/d/1yIAYmbvL3JxOKOjuCyon7JhW4cSv1wy5hC0ApeGMV9s/pub

 

5、增加sync.Pool

这个不一定会出现在正式发布的版本中

6、Native Client移植

支持x86架构的Native Client,Arm版本的没有计划支持

7、操作系统移植

solaris:已经在进展中

Plan 9:无计划

Arm:有志愿者在做移植

8、go command and fsnotify

有一个后台进程监控源文件是否有变化,编译、链接时仅处理有变化的文件,加快编译速度

9、支持链接object-c

10、linker overhaul

更多的并行处理

11、compiler overhaul

  1. 将使用go重写,原来是c语言写的
  2. 并不是“重写”,而是写自动转换的工具,将c语言的代码转换为go语言;
  3. 1.3版本开始,后面会持续优化。优化go语言的编译器将比优化c的版本简单很多,在后续版本中会受益很多

golang 1.3的新特征和目前进度