Go语言技术文章
-
- Go net.Resolver 自定义 DNS 解析超时的实现
- Go net.Resolver 的自定义超时要分成两层:调用 LookupIPAddr 时用 context.WithTimeout 限制整次解析,Resolver.Dial 内部再用 net.Dialer.DialContext 约束连接 DNS 服务的时间。本文给出可复用代码,并说明 PreferGo、StrictErrors、UDP/TCP 与错误判断边界。
- Golang · Go问答 | 3星期前 | 网络编程 · DNS · Go问答 · DNS Go net.Resolver 解析超时 LookupIPAddr 481浏览 收藏
-
- Go time.NewTimer替代高频time.After的资源控制方法
- 高频循环里反复调用time.After会让计时器无法主动取消。本文用可复用的time.NewTimer演示Stop、排空、Reset和退出清理,并说明Go 1.23前后的Timer语义差异。
- Golang · Go问答 | 3星期前 | 481浏览 收藏
-
- Go archive/tar Reader.Next 如何识别目录和链接
- Go 遍历 tar 归档时,不要只看文件名后缀,而应读取 tar.Header.Typeflag。本文用一套最小遍历代码说明如何识别目录、符号链接和硬链接,并处理 Linkname、Read、io.EOF 及路径安全边界。
- Golang · Go教程 | 1个月前 | 目录 · Go教程 · Go archive/tar tar.Reader.Next TypeDir TypeSymlink Linkname 481浏览 收藏
-
- Go fmt.Errorf 包装自定义格式化错误如何保留类型
- fmt.Errorf 用 %w 包装自定义错误后,调用方可通过 errors.As 找回具体类型;本文解释值接收者、指针接收者、%v 与目标指针的对应关系。
- Golang · Go问答 | 1个月前 | 481浏览 收藏
-
- Go archive/zip Writer.Close 失败时为什么不能忽略错误
- Go archive/zip 的 Writer.Close 负责写入 ZIP 中央目录,忽略其错误可能把半成品当成成功文件。本文用分层错误处理和临时文件发布说明可靠写法。
- Golang · Go教程 | 1个月前 | 481浏览 收藏
-
- Go context.WithValue 传 trace id 时 key 和类型怎么设计
- Go 用 context.WithValue 传 trace id 时,key 不要直接用 string;用包内私有类型配合类型化存取函数,既能避免跨包碰撞,也能限制值只服务于请求链路。
- Golang · Go问答 | 1个月前 | go · Context · Go context.WithValue trace id Context key 481浏览 收藏
-
- Go 接口比较 panic 是因为动态值不可比较吗
- Go 接口类型本身支持比较,但接口里的动态值如果是 slice、map、func,或包含这些字段的数组和结构体,比较相同动态类型的两个接口就可能触发 panic。本文说明判断边界,并给出 reflect.Value.Comparable、reflect.DeepEqual 和类型化比较的选择方法。
- Golang · Go问答 | 1个月前 | 接口 · Go问答 · 动态类型 reflect.Value.Comparable Go接口比较 interface panic 481浏览 收藏
-
- Go 用 httptest 测 Handler,为什么响应体是空的:WriteHeader、Result 与断言顺序
- Go 用 httptest 写 Handler 单测时,常见现象是状态码为 0、响应头没生效,或读到的响应体为空。关键是区分 ResponseRecorder 的记录时机、WriteHeader 的提交边界,以及 Result 必须在 Handler 返回后再读取。文中给出可复用的最小测试和复查清单。
- Golang · Go问答 | 3个月前 | 单元测试 · HTTP · Go问答 · 单元测试 HTTP响应 httptest Go问答 ResponseRecorder Handler测试 481浏览 收藏
-
- Golang静态资源服务怎么处理
- http.FileServer直接挂载根路径会404,因其严格匹配请求路径前缀且不自动补全斜杠;正确方式是用http.StripPrefix("/static/",fs)映射子路径,并注意尾部斜杠、绝对路径和缓存控制。
- Golang · Go教程 | 4个月前 | 481浏览 收藏
-
- Golang指针修改数组元素方法
- Go中使用指针可避免数组拷贝并直接修改原数据,因数组是值类型,传参时需传递指针(如[3]int)以实现外部修改,通过&取地址、解引用操作元素,函数中常见此用法;而切片为引用类型,无需显式取指针即可修改底层数组。
- Golang · Go教程 | 5个月前 | 481浏览 收藏
-
- Go语言unsafe包内存操作技巧
- unsafe.Pointer转*T时必须确保类型对齐和内存有效Go的unsafe.Pointer本身不携带类型信息,转成具体指针(如*int64)后,运行时不会校验目标地址是否真能存下该类型。一旦越界、未对齐或指向已释放内存,程序可能直接崩溃或读到垃圾值。常见错误现象:panic:runtimeerror:invalidmemoryaddressornilpointerdereference或静默返回错误数值使用场景:只应在明确知道底层内存布局时用,比如解析二进制
- Golang · Go教程 | 5个月前 | 481浏览 收藏
-
- Golang解析XMLJSON节点方法
- Go标准库的encoding/xml和encoding/json不支持访问者模式,需用xml.Decoder.Token()流式解析XML或json.RawMessage延迟解析JSON,或选用gjson/xmlquery等第三方库实现类似功能。
- Golang · Go教程 | 5个月前 | 481浏览 收藏
查看更多
课程推荐
-
- 前端进阶之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模型性能。
- 590次使用
-
- H2O EvalGPT
- H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
- 626次使用
-
- LMArena
- LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
- 661次使用
-
- HELM
- 深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
- 630次使用
-
- MMBench
- MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
- 445次使用

