Go语言技术文章
-
- 错误被 fmt.Errorf 包了几层还想分类:用 errors.Is、errors.As 和 Join 保留判断能力
- Go 错误一旦经过 fmt.Errorf 包装或 errors.Join 合并,直接比较和类型断言就容易失效。本文用 errors.Is、errors.As 和 Join 建立稳定的分类与诊断路径。
- Golang · Go问答 | 1个月前 | 错误处理 · go · 工程实践 · Go fmt.Errorf errors.Is errors.As errors.Join errors 184浏览 收藏
-
- Go 私有模块在 CI 里突然走代理:用 GOPRIVATE、GONOSUMDB 和 GOPROXY 分开排查
- CI 获取 Go 私有模块失败时,不要只把 GOPROXY 改成 direct。先看模块前缀是否命中 GOPRIVATE,再区分 GONOPROXY、GONOSUMDB、私有代理回退规则和非交互凭据问题。
- Golang · Go教程 | 1个月前 | 339浏览 收藏
-
- 一项并发任务失败后如何让兄弟任务收敛:用 errgroup 组织首错与取消
- 多个 Goroutine 并发执行时,errgroup 可以把首个错误、兄弟任务取消和统一等待放进同一条收敛链。本文给出可直接改造的 Go 写法,并说明 Context 必须传到真正执行 I/O 的位置。
- Golang · Go问答 | 1个月前 | 397浏览 收藏
-
- Go govulncheck 结果怎么看不误判:source 模式与 binary 模式各自能证明什么
- 通过源码调用图与二进制符号表两个证据边界,讲清 govulncheck source、binary 模式的运行方式、结果差异、局限和修复决策。
- Golang · Go教程 | 1个月前 | govulncheck Go漏洞扫描 source模式 binary模式 142浏览 收藏
-
- Go 依赖升级后仍命中旧版本:用 go list -m all 还原 MVS 选择结果
- 依赖升级后版本仍不如预期,通常不是 go get 失效,而是 MVS 按完整模块图计算了 build list。本文用三组 Go 命令定位谁抬高了版本,并处理 replace、exclude 与工作区边界。
- Golang · Go教程 | 1个月前 | 依赖管理 · go · Go MVS go list Go Modules 462浏览 收藏
-
- Go 超时后任务还在运行:把 Context 传到真正执行 I/O 的那一层
- Go 调用方超时并不代表下游工作已经停止。本文用一条清晰的调用链说明如何把 Context 传到真正执行 I/O 的函数,在阻塞点响应取消,并用 cancel 和 Cause 正确收尾。
- Golang · Go问答 | 1个月前 | 并发 · golang · Context · context (上下文) Go 协程 Go 函数 323浏览 收藏
-
- 从 os.DirFS 切到 io/fs 后路径变相对了:WalkDir 输出如何安全交给外部工具
- WalkDir 返回的是跨平台的 fs 逻辑路径,不是通用的磁盘绝对路径。本文用根目录封装、filepath.FromSlash 和边界判断,说明如何把结果安全交给外部工具。
- Golang · Go问答 | 1个月前 | 292浏览 收藏
-
- govulncheck 为什么有的漏洞只出现在测试:按扫描范围拆分依赖风险
- govulncheck 的结果不只是在说依赖版本旧,还在说明漏洞符号是否能从项目入口被调用。本文按导入、符号和测试范围拆分扫描,帮助你判断哪些结果需要立即升级。
- Golang · Go教程 | 1个月前 | 189浏览 收藏
-
- 多个 Goroutine 都会发消息时,谁负责关闭 Go Channel 才不会 panic
- 多发送者写入同一个 Go Channel 时,关闭责任应由等待所有发送者结束的协调者承担;本文用 WaitGroup 和 Context 说明如何避免重复关闭、发送到已关闭 channel 以及 Goroutine 泄漏。
- Golang · Go问答 | 1个月前 | 379浏览 收藏
-
- 锁竞争让 Go 服务变慢时看哪张图:block profile 与 mutex profile 的使用边界
- Go 服务变慢不一定先看 CPU。本文用 block profile 与 mutex profile 的记录语义、采样开关和 pprof 视图,说明如何区分等待方与持锁方,最后把画像结果落到具体同步点。
- Golang · Go问答 | 1个月前 | 130浏览 收藏
-
- govulncheck 报告里的 symbol 是什么:从入口函数追到可达漏洞代码
- govulncheck 报告中的 symbol 不是普通关键词,而是漏洞函数或方法在项目调用图中的落点。本文从源码扫描开始,演示如何区分导入命中、真实可达调用和分析边界,并用 traces 与 JSON 固化排障证据。
- Golang · Go教程 | 1个月前 | 151浏览 收藏
-
- Go 报 concurrent map writes 后如何定位真正的共享写入:从复现到 -race 报告
- 遇到 concurrent map writes 不要只给 map 加锁了事。本文从最小复现开始,用 -race 报告定位共享访问,再按互斥、单所有者和 sync.Map 的边界完成修复。
- Golang · Go问答 | 1个月前 | 496浏览 收藏
-
- Go 服务 CPU 高还是内存涨:按症状选择 pprof profile 并验证热点
- Go 服务 CPU 飙高、内存上涨或请求变慢时,按症状选择 CPU、heap、goroutine、block、mutex profile,再用 top、list 和对照采样确认热点。
- Golang · Go教程 | 1个月前 | 314浏览 收藏
查看更多
课程推荐
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- Golang深入理解GPM模型
- Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
- 474次学习
查看更多
AI推荐
-
- PubMedQA
- 深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
- 814次使用
-
- H2O EvalGPT
- H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
- 805次使用
-
- LMArena
- LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
- 895次使用
-
- HELM
- 深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
- 868次使用
-
- MMBench
- MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
- 691次使用

