AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

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:113791
用户头像

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

关注

评论

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

dart系列之:集合使用最佳实践

程序那些事

flutter dart 程序那些事 2月月更

小程序框架与平台编译对比

Speedoooo

编译 ios开发 APP开发 Andriod开发 小程序框架

如何用建木CI发送邮件

Jianmu

html 自动化 发送邮件

我们找回了泄露的内存

Qunar技术沙龙

DGIOT物联网架构设计

dgiot

物联网 2月月更 2月日更 dgiot dgiot物联网

书单 | 作为冬奥会的技术支持方,阿里云的技术都写在这些书里了!

博文视点Broadview

被催稿了,所以聊聊 长链接在移动端开发中如何做到和短链接一样高效

百瓶技术

TCP 计算机网络 websocket

今天踩了一个基础坑

编程三昧

JavaScript 2月月更

情人节,码了一个程序员专属冰墩墩(内含源码免费获取)

ZEGO即构

前端 html/css 情人节 表白 冬奥会

从IPv4 到 IPv6 的过渡技术

郑州埃文科技

ipv6 ipv4 过渡技术

SAE 最佳实践范本:助力视野数科进入云原生“快车道”

阿里巴巴云原生

阿里云 Serverless 云原生 SAE

OceanBase 雄踞墨天轮2021年度中国数据库魔力象限领导者

OceanBase 数据库

魔力象限 OceanBase 开源 领导者

【网络安全】什么是应急响应,应急响应中你到底该关注哪些指标?

H

网络安全 应急响应

买贵不买对?这个情人节,你的礼物选对了吗?

易观分析

情人节 美妆

实力卓越,旺链科技与IBM、华为等共登「超级账本」年度贡献榜!

旺链科技

区块链 超级账本 产业区块链

Java&Go高性能队列之Disruptor性能测试

FunTester

Disruptor 性能测试 高性能 消息队列 FunTester

Serverless 架构开发手册 — “人人都是 Serverless 架构师”先导篇

阿里巴巴云原生

阿里云 Serverless 架构 云原生

用python制作心型照片墙

36度道

Python基础

阿里巴巴如何进行测试提效 | 阿里巴巴DevOps实践指南

阿里云云效

阿里云 DevOps 云原生 测试 研发提效

年轻用户逐渐成为数字营销主流受众,品牌营销方式该如何创新?

易观分析

内容营销

7*24 小时业务不中断!菜鸟乡村应用多活落地实践

阿里巴巴云原生

阿里云 云原生 实践案例 多活

一篇文章讲懂prometheus

流沙

云原生 监控 Prometheus

从冬奥看中国科技(三):数字人的觉醒与进化

脑极体

运维工程师的工作内容有哪些?能详细列举一下吗?

行云管家

云计算 运维 系统运维 IT运维

去吗?去啊!喜欢就不要再犹豫

码哥字节

爱情 2月春节不断更 情人节 情书 2月月更

带你掌握Visual Studio Code的格式化程序

华为云开发者联盟

Python 代码 格式化 Visual Studio Code linter

1月月更获奖名单公布!快来获取专属海报

InfoQ写作社区官方

热门活动

你的数据产品应该是一套解决方案

第519区

数据产品经理 解决方案 数据产品 2月月更

网络安全kali渗透学习 web渗透入门 如何进行基于Nmap的扫描方式

学神来啦

【网络安全】记一次挖矿病毒的应急响应

H

网络安全 应急响应

如何利用 AHAS 保障 Web 服务稳如磐石?

阿里巴巴云原生

阿里云 高可用 云原生 AHAS

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