温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

golang1.11修改了哪些内容?

发布时间:2020-05-23 15:27:52 来源:亿速云 阅读:262 作者:鸽子 栏目:编程语言

正如Go 1.10发行说明中所宣布的那样,Go 1.11现在需要OpenBSD 6.2或更高版本,macOS 10.10 Yosemite或更高版本,或Windows 7或更高版本;删除了对这些操作系统的早期版本的支持。

-msan现在支持 内存清理器()linux/arm64。

现在支持 构建模式c-shared和。 c-archivefreebsd/amd64

在64位MIPS系统上,新的环境变量设置 GOMIPS64=hardfloat(默认设置)并 GOMIPS64=softfloat选择是将硬件指令还是软件仿真用于浮点计算。对于32位的系统中,环境变量仍然GOMIPS,因为在Go 1.10加入。

在软浮点ARM系统(GOARM=5)上,Go现在使用了更高效的软件浮点接口。这对于Go代码是透明的,但是使用不受GOARM保护的浮点指令的ARM程序集将中断,必须将其移植到新接口。

在ARMv7上运行1.11不再需要配置了Linux内核KUSER_HELPERS。此设置在默认内核配置中启用,但有时在精简配置中被禁用。

Web组装

Go 1.11向WebAssembly (js/wasm)添加了一个实验端口。

Go程序当前可编译到一个WebAssembly模块,该模块包括Go运行时,用于goroutine调度,垃圾回收,地图等。因此,结果大小至少约为2 MB,或压缩后500 KB。Go程序可以使用新的实验syscall/js包调用JavaScript 。二进制大小和与其他语言的互操作尚未成为优先事项,但将来的发行版中可能会解决。

由于添加了新的GOOS值“ js”和GOARCH值“ wasm”,Go工具现在将忽略名为*_js.go或的Go文件,除非使用了那些GOOS / GOARCH值。如果您已有与这些模式匹配的文件名,则需要重命名它们。 *_wasm.go

模块,软件包版本控制和依赖项管理

Go 1.11添加了对称为“模块” 的新概念的初步支持,这是GOPATH的替代方案,具有对版本控制和程序包分发的集成支持。使用模块,开发人员不再局限于在GOPATH中工作,版本相关性信息是明确而轻巧的,并且构建更加可靠和可复制。

模块支持被认为是实验性的。根据Go 1.11用户的反馈,详细信息可能会更改,并且我们计划了更多工具。尽管模块支持的详细信息可能会更改,但是使用Go 1.11转换为模块的项目将继续在Go 1.12和更高版本中使用。

构建缓存要求

Go 1.11将是支持将环境变量设置GOCACHE=off为禁用构建缓存的最新 版本,Go 1.10中引入了该功能。从Go 1.12开始,将需要构建缓存,这是消除的一步$GOPATH/pkg。上面描述的模块和程序包加载支持已经要求启用构建缓存。

以上就是golang1.11改了哪里东西的详细内容,更多请关注亿速云其它相关文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI