Go语言技术文章
-
- Go语言defer执行机制详解
- defer在函数return后、退出前执行,panic时也执行;参数在defer注册时求值而非调用时,故for循环中直接写deferfmt.Println(i)会打印循环结束时的i值。
- Golang · Go教程 | 4个月前 | 289浏览 收藏
-
- Go语言goroutine基础用法详解
- goroutine传参需避免循环变量共享,正确做法是将循环变量作为参数传入匿名函数,而非在闭包中直接引用,否则所有goroutine会共享同一变量值。
- Golang · Go教程 | 4个月前 | 210浏览 收藏
-
- Go调度器GMP模型发展全解析
- GM模型撑不住多核,因其依赖单一全局队列导致锁竞争严重、系统调用阻塞整个M、无本地缓存与负载不均;GMP通过引入P实现本地队列、工作窃取和M-P解耦,显著提升多核利用率。
- Golang · Go教程 | 4个月前 | 215浏览 收藏
-
- Golang集成Casbin实现策略访问控制
- Casbin的Enforce总返回false最常见原因是策略未加载成功、请求参数与策略字符串不精确匹配(大小写/路径前缀/空格等),或JWT未解析出角色就直接传入。
- Golang · Go教程 | 4个月前 | 265浏览 收藏
-
- Golang装饰器模式实现与应用示例
- Go语言可用组合+接口+高阶函数模拟装饰器,核心是接口统一、嵌入持有、链式调用;HTTP中间件、函数型装饰器、泛型结合均为典型应用,关键在横切关注点分离与正确调用顺序。
- Golang · Go教程 | 4个月前 | 457浏览 收藏
-
- Oracle 获取最后插入 ID 的 Go 实战教程
- 在Go应用中操作Oracle时,若需在插入主表后立即获取自动生成的主键(如通过序列+触发器),再用于从表外键关联,不能依赖LastInsertId()(Oracle驱动不支持),而应使用RETURNINGINTO语句结合sqlx.QueryRow()安全、高效地一次完成插入与ID获取。
- Golang · Go教程 | 4个月前 | 427浏览 收藏
-
- Go 中 strings.Builder 扩容机制解析
- strings.Builder扩容公式为“2×cap(b.buf)+n”,即当前容量翻倍后加上新增需求字节数,确保扩容后容量足以容纳全部新数据。
- Golang · Go教程 | 4个月前 | 499浏览 收藏
-
- Go启动报错address family not supported排查指南
- Go程序启动报“Addressfamilynotsupportedbyprotocol”可锁定为IPv6绑定失败,主因是系统禁用IPv6(/proc/sys/net/ipv6/conf/all/disable_ipv6=1)而代码或依赖库仍尝试AF_INET6socket;修复方式是显式使用"0.0.0.0:端口"替代""或"[::]:端口",避免隐式IPv6回退。
- Golang · Go教程 | 4个月前 | 466浏览 收藏
-
- Golang包可见性控制详解:首字母大小写规则
- 在Golang中,包的可见性控制机制通过标识符首字母大小写实现。1.首字母大写的标识符为“导出”的(public),可在包外部访问;2.首字母小写的标识符为“未导出”的(private),仅限包内部使用;3.该规则适用于变量、函数、结构体、接口及方法;4.这种设计简化了语言结构并强化API封装性,促使开发者明确公共接口与内部实现边界,提升了代码可维护性和一致性。
- Golang · Go教程 | 4个月前 | 207浏览 收藏
-
- Golang任务调度可靠性与一致性方案
- cron包无法满足生产级可靠性,因其是单机内存调度器,无状态持久化、无分布式锁、无幂等保障,导致任务丢失、重复执行或中断无补偿。
- Golang · Go教程 | 4个月前 | 273浏览 收藏
-
- Golang字符串批量替换实战教程
- strings.Replacer适合什么场景批量、无重叠、纯字符串替换——比如把日志里的敏感字段password、token、api_key全替成"***",或者统一修正一堆旧API路径前缀。它不是正则,不支持模式匹配,也不处理重叠替换(比如用"ab"→"x"和"abc"→"y"同时存在时,"abc"不会优先匹配长的)。常见错误现象:strings.Replacer对输入不做任何预处理,如果原始文本里有换行、空格缩进不一致,或大小写混杂,它就原样比对——结果就是“明明写
- Golang · Go教程 | 4个月前 | 244浏览 收藏
-
- Go 中优化小结构体内存分配技巧
- 小结构体是否“小”取决于其落入的sizeclass档位,由字段顺序、指针逃逸和Go版本共同决定;真实分配大小需查当前Go版本的sizeclasses.go,而非仅看unsafe.Sizeof(T{})。
- Golang · Go教程 | 4个月前 | 275浏览 收藏
-
- Go 中高效比较 time.Duration 并取最小值方法
- Go1.21+可直接使用内置min()函数比较两个time.Duration值;旧版本需手动实现,本文详解两种方案及最佳实践。
- Golang · Go教程 | 4个月前 | 480浏览 收藏
-
- Golang观察者模式实现与事件通知方法
- Go需自定义Observer/Subject接口实现观察者模式,推荐泛型EventBus[T]确保类型安全,用切片存观察者并加读写锁,Notify时逐个goroutine调用并recover隔离panic。
- Golang · Go教程 | 4个月前 | 459浏览 收藏
-
- Golang gRPC服务注册发现方法详解
- 答案:Golang中gRPC服务注册与发现需借助第三方组件,常用方式包括etcd、Consul、Nacos及自定义resolver。1.etcd通过租约机制注册服务并监听节点变化,结合gRPCResolver实现动态寻址;2.Consul提供健康检查与服务注册,客户端通过API或DNS查询获取实例;3.Nacos支持可视化管理,集成SDK完成注册与订阅;4.gRPC内置Resolver和Balancer接口可对接任意注册中心。选择方案应根据基础设施,确保健康检查与重连机制稳定。
- Golang · Go教程 | 4个月前 | 180浏览 收藏
查看更多
课程推荐
-
- 前端进阶之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模型性能。
- 500次使用
-
- H2O EvalGPT
- H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
- 558次使用
-
- LMArena
- LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
- 587次使用
-
- HELM
- 深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
- 539次使用
-
- MMBench
- MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
- 349次使用

