Go 1.4 rc2 发布,Go 1.5 新特性预览

oschina
 oschina
发布于 2014年12月02日
收藏 16

Go 1.4 rc2 发布,帮助 Go 团队测试一下 Go 1.4 RC2 版本吧!

请使用 issue tracker 反馈问题:

http://golang.org/issue/new

此版本二进制包和源代码都已提供下载:

http://golang.org/dl/#go1.4rc2

Go 1.4 完整改进内容请看这里,文档请看这里

Go 团队计划在 2014 年 12 月 8 日发布 Go 1.4 的最终版本。

Go 1.5 特性预览:

Go 1.4 快完成了,Go 团队已经在谋划 Go 1.5 版本了,计划需要 6 个月的时间。

Go 1.5 新特性有哪些?

最容易看见的改进是 Go 将会存储在 Git 上。

除了源代码本身,还将会有一些重大改进:

首先,Go 1.5 版本的垃圾收集机制将会是完全并发的,把暂停情况降到最低。详情请看这里

其次,Go 1.5 版本的编译器,汇编器,链接器和运行时将会完全使用 Go 编写,其中一部分工作已经完成,还有一些也会自动完成,剩下一些将会继续手工完成。因为最终目标是从源代码树消除 C,所以不排除程序需要使用 cgo(不是 C 编译器)来构建或者使用 Go。这个事情提出有一段时间了,但是现在终于完成了一部分。

最后,新的移植将会包括 64 位的 Power PC,更完全的支持 Android 和 64 位 ARM。

再重申一下:

一旦 Go 1.4 版本完成,Go 团队将会开放新的 CLs,但是想更多的专注这些根本性的改进,希望一切能按照计划进行,把 Go 设计的更加完美:)

请记住,开源社区是至关重要的生态系统。我们非常感谢你的贡献!

-rob, for the Go team

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:Go 1.4 rc2 发布,Go 1.5 新特性预览
加载中

最新评论(45

F
FaintX

引用来自“回去干活”的评论

学习go有两个月了.初学感觉很简单,不过深入过,各种runtime,内置类型的一些数据结构蛋疼.最后发现,不比C语言简单.

引用来自“温习江湖”的评论

肯定不会比C简单的,因为这玩意最初开发的意愿是替代和补充C++之类的语言。

引用来自“人体艺术”的评论

c 是挺简单的, 不过宏太脏眼睛, 构建太麻烦, 没有包机制. 依赖管理和松散的头文件等都很让人花时间.

引用来自“FaintX”的评论

你C处理个多线程对比下。
你C处理个SOCKET连接,只要能连上即可的对比下。
你C处理个HTTP服务器对比下。

觉得go难,到底是哪里觉得难?runtime?也比其他语言简单。内置类型就个slice听起来新鲜,可是理解起来也没难度,只是为了追求效率,所以操作自然不像map,不爽你可以用map或者array……
channel?for-selcet?这些都比c下的替代方案pthread等简单得多好吧……
socket跨平台处理比libevent更是简单不知道多少……
我真的还蛮好奇的!

引用来自“webyh”的评论

难道如果用go写操作系统,那么go就不难咯,语言和实现东西是两个东西
抛开实现谈语言……ok,ok,这个论调我接受。
业内确实有那么几个啥事都干不了,但是确实一门完整语言的语言。
smart_w
smart_w

引用来自“回去干活”的评论

学习go有两个月了.初学感觉很简单,不过深入过,各种runtime,内置类型的一些数据结构蛋疼.最后发现,不比C语言简单.

引用来自“温习江湖”的评论

肯定不会比C简单的,因为这玩意最初开发的意愿是替代和补充C++之类的语言。

引用来自“人体艺术”的评论

c 是挺简单的, 不过宏太脏眼睛, 构建太麻烦, 没有包机制. 依赖管理和松散的头文件等都很让人花时间.

引用来自“FaintX”的评论

你C处理个多线程对比下。
你C处理个SOCKET连接,只要能连上即可的对比下。
你C处理个HTTP服务器对比下。

觉得go难,到底是哪里觉得难?runtime?也比其他语言简单。内置类型就个slice听起来新鲜,可是理解起来也没难度,只是为了追求效率,所以操作自然不像map,不爽你可以用map或者array……
channel?for-selcet?这些都比c下的替代方案pthread等简单得多好吧……
socket跨平台处理比libevent更是简单不知道多少……
我真的还蛮好奇的!
难道如果用go写操作系统,那么go就不难咯,语言和实现东西是两个东西
灵魂架构师
灵魂架构师
学习几个月了,感觉Go很好
刘地
刘地
没有啊,go1.4稳定版
纯洁徐
纯洁徐

引用来自“西夏一品堂”的评论

大家一般用go来做什么?哪方面的开发

引用来自“FaintX”的评论

服务器端,并发相关。
比如游戏服务器。
比如云储存。
比如docker。
需要高性能的,需要大量数据计算的,产品比较酷炫的
eechen
eechen
C语言使用网络框架库比如libevent/libev/libuv/acl后是否就能抵消Go的优势,而又没Go垃圾回收时的卡顿呢?在Nginx_OpenResty上进行Lua Web编程也是另一种开发高性能网络应用的选择.
eechen
eechen

引用来自“西夏一品堂”的评论

大家一般用go来做什么?哪方面的开发

引用来自“FaintX”的评论

服务器端,并发相关。
比如游戏服务器。
比如云储存。
比如docker。
http://blog.csdn.net/liigo/article/details/23699459
里面谈到了Go语言垃圾回收器真正致命的缺陷是,会导致整个进程不可预知的间歇性停顿。像某些大型后台服务程序,如游戏服务器、APP容器等,由于占用内存巨大,其内存对象数量极多,GC完成一次回收周期,可能需要数秒甚至更长时间,
这段时间内,整个服务进程是阻塞的、停顿的,在外界看来就是服务中断、无响应,再牛逼的并发机制到了这里统统失效。垃圾回收器定期启动,每次启动就导致短暂的服务中断,这样下去,还有人敢用吗?这可是后台服务器进程,是Go语言的重点应用领域。

http://www.csdn.net/article/2014-11-07/2822545
在小米网第二版抢购系统的开发过程中,我们遇到了HTTP层Go程序内存消耗过多的问题。由于HTTP层主要用于维持住用户的访问请求,每个请求中的数据都会占用一定的内存空间,当大量的用户进行访问时就会导致内存使用量不断上涨。当内存占用量达到一定程度(50%)时,Go中的GC机制会越来越慢,但仍然会有大量的用户进行访问,导致出现“雪崩”效应,内存不断上涨,最终机器内存的使用率会达到90%以上甚至99%,导致服务不可用。在Go语言原生的HTTP包中会为每个请求分配8KB的内存,用于读缓存和写缓存。而在我们的服务场景中只有GET请求,服务需要的信息都包含在HTTP Header中,并没有Body,实际上不需要如此大的内存进行存储。为了避免读写缓存的频繁申请和销毁,HTTP包建立了一个缓存池,但其长度只有4,因此在大量连接创建时,会大量申请内存,创建新对象。而当大量连接释放时,又会导致很多对象内存无法回收到缓存池,增加了GC的压力。
hell0cat
hell0cat
国内追go的很多 rust的就比较少了
返回顶部
顶部