Go 1.22 版本正式发布
语言变化
长期存在的 "for "循环在迭代之间意外共享循环变量的问题现已得到解决。
从 Go 1.22 开始,以下代码将按一定顺序打印 "a"、"b "和 "c":
func main() { done := make(chan bool) values := []string{"a", "b", "c"} for _, v := range values { go func() { fmt.Println(v) done <- true }() } // wait for all goroutines to complete before exiting for _ = range values { <-done } }
有关这一变更以及有助于防止代码意外中断的工具的更多信息,请参阅之前的《Fixing For Loops in Go 1.22[2]》。
第二个语言变化是支持整数范围:
package main import "fmt" func main() { for i := range 10 { fmt.Println(10 - i) } fmt.Println("go1.22 has lift-off!") }
第二个语言变化是支持整数范围:a 在这个倒计时程序中,i 的取值范围为 0 至 9(含 9)。
性能提高
Go 运行时中的内存优化可将 CPU 性能提高 1-3%,同时还可将大多数 Go 程序的内存开销减少约 1%。
在 Go 1.21 中,我们为 Go 编译器提供了配置文件引导优化 (PGO),而且这一功能还在不断改进。
Go 1.22 中新增的优化之一是改进了虚拟化,允许静态调度更多的接口方法调用。启用 PGO 后,大多数程序的性能将提高 2% 至 14%。
标准库变动
新的 math/rand/v2 软件包提供了更简洁、更一致的应用程序接口,并使用了质量更高、速度更快的伪随机生成算法。
net/http.ServeMux 使用的模式现在可接受方法和通配符。
例如:路由器接受 GET /task/{id}/ 这样的模式,该模式只匹配 GET 请求,并在一个可通过 Request 值访问的映射中捕获 {id} 段的值。
database/sql 包中新增了 Null[T] 类型,为扫描可为空的列提供了一种方法。
在 slices 包中添加了 Concat 函数,用于连接任意类型的多个片段。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
PicHoro V2.2.4 发布,手机云存储管理和图片上传工具 七牛云优化
PicHoro 是一款基于 flutter 开发的手机端云存储平台 / 图床管理和文件上传 / 下载工具,最新版本 V2.2.4,与 PicGo 配置互通,可直接扫码导入,主要功能包括云存储 / 图床 / 云服务器平台,以及网盘管理(通过 Alist,文件上传和下载管理,以及各种格式的链接分享,支持多种图片 / PDF / 文本文件 / 音视频的在线预览和播放, 开源地址和软件官网 Github: Kuingsmile/PicHoro: 一款手机端云存储平台 / 图床管理和文件上传 / 下载工具,支持直接管理 Webdav,Alist,SSH/SFTP,云服务器,兼容 S3 API 的平台,腾讯 COS,阿里 OSS,七牛云,又拍云,兰空图床,Imgur,SM.MS 和 github 软件官网:https://pichoro.horosama.com 下载地址 https://pichoro.msq.pub/PicHoro_V2.2.4.apk 本次更新内容 新增:七牛云新增 亚太-河内区域支持 新增:优化了github用户名的判断逻辑 修复:修复了七牛云检查配置时,即使配置正确也会提...
- 下一篇
【店滴云】1.4.7 发布,细化权限控制,增强后台功能
【店滴云】1.4.7发布,细化权限控制,增强后台功能 1、增加套餐服务,用户可以选用套餐获取权限2、增加公司使用有效期3、修复全局api地址扫描,智能入库路由4、增加多种业务模式的选择,不同业务模式在小程序端显示不同界面5、将微信类业务移动到common/modules下,通过配置的方式满足多终端使用的要求6、增加服务站群,可以满足saas用户以站群的方式运营7、路由的操作细化,明确目录类路由必须以*号结尾,来满足权限模糊匹配查询8、增加用户注册建立关系,可以看到自己发展的下级公司9、增加帮助手册,以主题分类的方式让用户快速使用 完整的更新日志:https://gitee.com/wayfirer/ddiot/commits/1.4.7
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS8编译安装MySQL8.0.19