写点什么

Go 1.3 正式版发布

  • 2014-06-19
  • 本文字数:1093 字

    阅读完需:约 4 分钟

6 月 18 日,在 Go 1.2 发布六个月之后,Go 官方宣布正式发布 Go 1.3。Go 1.3 并没有引入新的语言功能,只是进行了功能改进,并修复了一些 bug 以及用户的反馈。新的版本开始支持 DragonFly BSD、Solaris、Plan 9 和 Google 的 NaCl( Native Client),且显著改进了链接器和编译器。低版本的 Go 语言用户无需更改任何代码即可升级到 Go 1.3。

Go 语言是由 Google 开发的一个开源项目,目的之一是为了提高开发人员的编程效率。Go 语言的并行机制使其很容易编写多核和网络应用, 而重新设计的的类型系统允许构建有弹性的模块化程序。Go 语言可以快读编译为机器码, 同时具有高效的垃圾回收和强大的运行时反射。它是一门快速的、静态类型的编译语言, 但是感觉上却是动态类型的解释型语言。

Go 1.3 仍在向承诺的目标(更快、更简单)前进,主要改进包括:

  1. 改进了内存模型。在缓冲的 channel 发送和接收数据时增加了一条规则,使缓冲的 channel 可以被用作一个简单的信号灯(Semaphore)。
  2. 不再支持 Windows 2000。微软在 2010 年时就不再支持 Windows 2000,现在 Go 1.3 也放弃对它的支持。
  3. 支持 BSD 和 Solaris 系统。Go 1.3 开始支持 DragonFly BSD、FreeBSD、NetBSD、OpenBSD、Plan 9、Solaris,但对这些系统的支持都有一些其他特殊要求,比如对 FreeBSD 的支持必须要求内核编译时配置COMPAT_FREEBSD32参数。
  4. 支持 Native Client 虚拟机架构。Go 1.3 既可以在 32 位 Inter 架构处理器上 ( GOARCH=386 ) 运行,也能在 64 位 Intel 架构上运行,但是在 64 位架构上使用的是 32 位 pointer,对于 ARM 架构暂不支持。关于 Native Client 的介绍可以阅读其官方介绍
  5. 改进了栈的实现方式。将栈实现方式从分段(segmented)模型改为连续(contiguous)模型。当一个 goroutine( Go 语言提供的一种用户态线程)需要更多的栈空间且超过了可用大小时,栈会被转移到一个单独的更大的内存块。
  6. 改进了垃圾回收机制。Go 已经在堆上实现了精准的垃圾回收,Go 1.3 增加了栈上的垃圾回收。另外,GC 的速度也得到了提升,现在采用的是并发清除算法,可以缩短 50-70% 的 GC 中断时间。
  7. 重构了链接器。对链接器和编译器进行了重构,链接器仍然是使用 C 语言编写,但是指令选择阶段被移入到编译器中并创建了一个新的包liblink。指令选择只会在程序包被编译时执行一次,所以这这样可以加快大幅度提升大工程的编译速度。
  8. 其它的一些改进。比如实现了新的正则表达式引擎、更快的 race detector、默认栈的大小从 8K 变为 4K 字节、资源竞争的检测快了 40%、增加了很多新参数等。

读者可以在这里下载 Go 1.3。详细的改进说明可以阅读官方文档。不能翻墙的用户可以使用社区提供的镜像来下载。

2014-06-19 20:113531
用户头像

发布了 219 篇内容, 共 138.9 次阅读, 收获喜欢 191 次。

关注

评论

发布
暂无评论
发现更多内容

【架构师训练营 - 作业 -5】一致性HASH算法实现

小动物

极客大学架构师训练营 作业 第五周

不懂SpringApplication生命周期事件?那就等于不会Spring Boot嘛

YourBatman

Spring Boot SpringApplication

Week 5 作业

Shawn

使用@AutoConfigureBefore调整配置顺序竟没生效?

YourBatman

Java Spring Boot @AutoConfigureBefore

Week 05- 作业一:一致性 hash 算法

dean

极客大学架构师训练营

架构师训练营第5周作业

Bruce Xiong

动手实现一致性hash算法

极客大学架构师训练营 分布式缓存 一致性哈希 一致性hash

分布式缓存、消息系统和异步架构

架构5班杨娟Jessie

极客大学架构师训练营

就餐卡系统设计

week5-总结 技术选型

Geek_z9dmvw

用一致性Hash算法的实现负载均衡(Kotlin)

Acker飏

极客大学架构师训练营 一致性Hash算法

Week5 一致性hash算法

TiK

首次揭秘!​春晚活动下快手实时链路保障实践

Apache Flink

Apache flink 架构 实时计算

Week5 学习总结

wyzwlj

极客大学架构师训练营

区块链技术打通医疗应用场景

CECBC

行业资讯 生产 区块链技术 生活服务

开发人员应当避免的代价高昂的职业错误

小隐乐乐

职业规划 职业素养 架构师

第五周作业-一致性hash算法实现

吴建中

极客大学架构师训练营

你都如何回忆我,带着笑或是很沉默

小天同学

回忆 高考 青春

Spring 同名 Bean 加载策略

xiaoxi666

spring bean 同名 覆盖

一致性Hash算法以及Java代码实现

架构5班杨娟Jessie

极客大学架构师训练营

week2作业

架构师训练营第五章总结

叮叮董董

架构师训练营第五章作业

叮叮董董

架构师训练营学习总结——缓存与消息队列【第五周】

王海

极客大学架构师训练营

架构师训练营 Week 05 作业

Wancho

Week 05- 作业二:学习总结

dean

极客大学架构师训练营

Week 05 命题作业

卧石漾溪

极客大学架构师训练营

架构师训练营 - 第五周 - 学习总结

韩挺

命题作业5-1 【C++实现版本】

天之彼方

c++

springBoot集成rabbitmq并实现延时队列

生命在于折腾

RabbitMQ

架构师训练营 - 第五周 - 作业

韩挺

Go 1.3正式版发布_Google_小盖_InfoQ精选文章