写点什么

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

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

关注

评论

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

高达 30% 合作收益,TDengine 合作伙伴计划重磅发布

TDengine

tdengine 时序数据库

企业发展的刚需:零碳园区如何为入园企业创造价值?

西格电力

绿色能源转型 碳中和碳达峰 零碳园区 能源可再生 智能化技术

AI不再“卖梦想”,Anthropic教行业用CFO的语言讲价值

Alter

AI

Nginx的ngx_thread_pool模块解析:提升性能与可伸缩性

天翼云开发者社区

nginx CDN

微擎:让每个创意都能开花的小程序生态引擎

微擎应用市场

云栖实录|MaxCompute全新升级:AI时代的原生数据仓库

阿里云大数据AI技术

阿里云 数据仓库 MaxCompute

低代码新建表单实操:纯表单 / 列表表单配置 + 表名避坑

引迈信息

🔥 2025 OCP 峰会大爆点抢先看

GPU算力

StarRocks 数据分析加速:ETL 如何实现实时同步与高效查询

谷云科技RestCloud

数据处理 数据同步 ETL 数据集成 StarRocks

自动化运维新时代:智能调度与监控让集成更简单

谷云科技RestCloud

数据传输 数据同步 ETL 数据监控 数据集成工具

制造业能源管理新范式:MyEMS 在工业园区的落地实践

开源能源管理系统

开源 能源管理系统

云栖实录 | 通义实验室基于MaxCompute进行大模型数据管理及处理

阿里云大数据AI技术

阿里云 数据处理 大模型 MaxCompute 通义实验室

夜莺监控设计思考(二)边缘机房架构思考

巴辉特

Nightingale 监控告警 夜莺监控 开源监控

双向链表的奥妙 - 浏览器航海家

华为云开发者联盟

c++ 数据结构 双向链表 华为开发者空间

【数组与链表】数组的基本演绎法与排序“大乱斗”

华为云开发者联盟

c++ 数据结构 数组 华为开发者空间

新手该如何选择AI编程工具?文心快码Comate全方位体验

Comate编码助手

AI编程 文心快码 AI编程助手

动态加速中优化失败路径反馈的方法

天翼云开发者社区

CDN 全站加速

Playwright MCP在UI回归测试中的实战:构建AI自主测试智能体

测试人

人工智能 软件测试

【数组与链表】循环链表实战 - 约瑟夫问题求解

华为云开发者联盟

c++ 数据结构 华为开发者空间

面向软件厂商的低代码解决方案:如何无需重构现有系统即可满足客户定制化需求?

星云低代码中间件

低代码 数字化 业务系统

作为测试工程师,我们该如何应用AI?

思码逸研发效能

AI 自动化测试 API测试 AI编程 思码逸

火山引擎Data Agent再拓新场景,重磅推出用户研究Agent

字节跳动数据平台

焱融科技携手哈工大(深圳)共启AI推理存储研究,推进AI基础设施创新

焱融科技

AI推理 焱融存储 KVCache 哈尔滨工业大学(深圳)

Sight AI 入门:5分钟实现OpenAI兼容的多模型AI调用

SightAI

MaaS 大模型 API 工具 开源‘

医疗公有云市场第一!

天翼云开发者社区

公有云 天翼云

复盘:如何用Coze+Kimi,搭建一个能自动分析财报的“金融助理”?

测试人

破壁者万里眼,点亮示波器的东方之眼

脑极体

AI

行业热点丨仿真驱动设计:兼顾性能、可持续性与效益

Altair RapidMiner

汽车 制造业 仿真 CAE hyperworks

斩获双项第一,天翼云问鼎中国医学影像云解决方案市场!

天翼云开发者社区

云服务 医疗云

Sight AI 入门:5分钟实现OpenAI兼容的多模型AI调用

SightAI

MaaS 大模型 API 工具 开源‘

Sight AI 入门:5分钟实现OpenAI兼容的多模型AI调用

SightAI

MaaS 大模型 API 工具 开源‘

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