golang
已收录文章:706篇
-
Go语言通过regexp包实现正则操作,1.编译表达式提升性能;2.查找匹配文本并提取子串;3.用分组获取结构化信息;4.支持字符串替换。454 收藏
-
byte是uint8别名,用于单字节ASCII字符;2.rune是int32别名,用于表示Unicode码点,可处理中文、emoji等多字节字符;3.Go字符串以UTF-8存储,索引访问得byte,range循环解析为rune。454 收藏
-
Golang中path/filepath包提供跨平台路径处理,自动适配不同系统分隔符;使用Clean规范路径,Join拼接路径,Dir、Base、Ext拆分路径,WalkDir遍历目录,避免手动拼接,确保程序稳定运行。454 收藏
-
使用bufio.Reader分块读取可有效控制内存,避免大文件处理时的内存溢出;通过调整缓冲区大小(如4KB~256KB)优化性能,结合scanner处理文本行并设置合理缓冲上限,或在随机访问场景下选用mmap方案,平衡效率与资源消耗。454 收藏
-
清除模块缓存可强制重新下载依赖,执行goclean-modcache后运行gomodtidy会触发重新拉取;若使用replace指向本地路径,需注释该行并执行gomodtidy以恢复网络拉取;修改依赖版本号或使用伪版本如gogetmodule@commit-hash也能强制更新;临时设置GOPROXY=direct可绕过代理缓存直连源站;若启用vendoring,删除vendor目录后重新执行gomodvendor将基于最新配置拉取代码。多数情况推荐先清除缓存再整理依赖。452 收藏
-
context用于控制请求生命周期,通过WithTimeout设置超时,WithDeadline设定截止时间,WithCancel手动取消,结合select监控Done信号,在HTTP服务中传递超时控制,提升系统稳定性。452 收藏