golang
已收录文章:13964篇
-
Go中操作数据库事务需确保错误时自动回滚,使用database/sql包的Begin()开启事务,Exec/Query执行操作,Commit提交或Rollback回滚。推荐defertx.Rollback()并结合错误判断,在函数退出时根据err状态决定提交或回滚,即使已提交,后续Rollback调用返回sql.ErrTxDone可忽略,保证资源安全释放。177 收藏
-
Go语言通过filepath包实现跨平台路径处理,使用filepath.Join自动适配系统分隔符,如Join("dir","file.txt")在Linux生成"dir/file.txt"、Windows生成"dir\file.txt";通过filepath.ToSlash和FromSlash转换斜杠格式,Clean清理多余.和..,结合Abs获取绝对路径,确保程序在不同操作系统正确运行。177 收藏
-
Go语言通过time.Timer和time.Ticker结合goroutine实现任务调度;2.Timer用于单次延迟任务,如5秒后执行提醒;3.Ticker支持周期性任务,如每2秒执行日志打印;4.多任务可通过Task结构体封装并用sync.Map管理;5.结合context.Context实现优雅启停与生命周期控制。177 收藏
-
引言 今天笔试题遇到 var x string = nil ,问这个定义是否正确? 这里给出答案: cannot use nil as string value in variable declaration。 也就是说,string类型和nil八竿子打不着,要想判断字符串是否为空,可176 收藏
-
文档自动生成(如 -h --help)多级子命令(如 docker exec -it)支持参数(如 ls -color=auto)长短选项(如 -v 和 --verbose)全局选项(如 docker -D run -d nginx)Tab 自动补全 本文就探讨一下 Go 语言中如何176 收藏
-
如果全局变量只读取 那自然是不需要加锁的 如果全局变量多进程读,多进程写,那自然是需要加读写锁的 但是如果全局变量只有一个进程写,其他进程读呢? 如果采用COW的方式,写进程只是176 收藏