Go语言技术文章

  • Go客户端报错 origin not allowed 解决方法
    Go客户端报错 origin not allowed 解决方法
    GoWebSocket服务端默认拒绝非本地Origin是因websocket.Upgrader的CheckOrigin方法默认返回false所致;需显式配置CheckOrigin,开发可临时设为returntrue,生产必须用白名单校验Origin,包括处理"null"情况。
    Golang · Go教程   |  4个月前  |   271浏览 收藏
  • Go 语言中使用第三方包是否必须执行 go get 命令?
    Go 语言中使用第三方包是否必须执行 go get 命令?
    goget在Go模块时代已演变为依赖获取与构建工具,现代项目中通常无需手动调用;但理解其作用机制对依赖管理至关重要。`goget`在Go模块时代已演变为依赖获取与构建工具,现代项目中通常无需手动调用;但理解其作用机制对依赖管理至关重要。在Go1.11引入模块(GoModules)后,goget的角色发生了本质变化:它不再仅用于“安装”包到$GOPATH,而是作为模块依赖解析、下载与升级的核心命令。是否需要显式执行goget,
    Golang · Go教程   |  4个月前  |   371浏览 收藏
  • Golang基准测试与性能回归分析
    Golang基准测试与性能回归分析
    要获得可比的基准测试结果,需加-benchmem、-count=5、-benchtime=5s;避免笔记本环境;确保GOMAXPROCS一致;防止编译器优化:用全局变量接收结果并调用b.ReportAllocs()。
    Golang · Go教程   |  4个月前  |   104浏览 收藏
  • Golang 回调函数实现方法详解
    Golang 回调函数实现方法详解
    Go中无面向对象式回调方法,仅支持函数值或接口;传方法需闭包包装或显式转换;应定义命名函数类型(如OnCompleteFunc)、避免nil调用、注意panic恢复与错误处理。
    Golang · Go教程   |  4个月前  |   374浏览 收藏
  • Golang任务去重防重复执行实现方法
    Golang任务去重防重复执行实现方法
    sync.Map适用于单机、短生命周期任务去重,需LoadOrStore判断存在性并deferDelete防泄漏;Redis+Lua实现跨实例原子去重;数据库唯一索引提供强一致性;MQ自身去重不可替代业务层key维度去重。
    Golang · Go教程   |  4个月前  |   122浏览 收藏
  • Golang全局状态管理建议:少用全局变量
    Golang全局状态管理建议:少用全局变量
    Go中全局变量是状态管理最危险的捷径,因其导致并发不安全、测试难隔离、多租户混乱且违反依赖显式化;应将状态绑定到具体实例,用组合+接口驱动流转,仅极少数场景(如连接池)可用sync.Map或atomic.Value安全实现。
    Golang · Go教程   |  4个月前  |   269浏览 收藏
  • Go语言unsafe包内存操作技巧
    Go语言unsafe包内存操作技巧
    unsafe.Pointer转*T时必须确保类型对齐和内存有效Go的unsafe.Pointer本身不携带类型信息,转成具体指针(如*int64)后,运行时不会校验目标地址是否真能存下该类型。一旦越界、未对齐或指向已释放内存,程序可能直接崩溃或读到垃圾值。常见错误现象:panic:runtimeerror:invalidmemoryaddressornilpointerdereference或静默返回错误数值使用场景:只应在明确知道底层内存布局时用,比如解析二进制
    Golang · Go教程   |  4个月前  |   481浏览 收藏
  • Golang打造多厂商高性能文件网关
    Golang打造多厂商高性能文件网关
    不能直接在ReverseProxy上加if-else做厂商分发,因为Director不感知请求头以外上下文、req.Body读空后无法复用、多厂商协议逻辑互斥易导致路由混乱、协议误判与越权风险。
    Golang · Go教程   |  4个月前  |   192浏览 收藏
  • Golang反射遍历接口实例详解
    Golang反射遍历接口实例详解
    Go语言中反射可动态获取接口变量的类型和值,通过reflect.ValueOf()和reflect.TypeOf()遍历结构体字段与方法,仅能访问导出字段(首字母大写),适用于序列化、ORM等场景。
    Golang · Go教程   |  4个月前  |   golang 反射 393浏览 收藏
  • Go语言内存占用解析与优化技巧
    Go语言内存占用解析与优化技巧
    Go的“内存占用”指程序运行时实际占用的RAM量,主要源于其垃圾回收机制、运行时开销和对象分配模式;它并非语言固有缺陷,而是自动内存管理在吞吐与延迟间权衡的结果,可通过调优(如sync.Pool、GOGC)显著改善。Go的“内存占用”指程序运行时实际占用的RAM量,主要源于其垃圾回收机制、运行时开销和对象分配模式;它并非语言固有缺陷,而是自动内存管理在吞吐与延迟间权衡的结果,可通过调优(如`sync.Pool`、`GOGC`)显著改善。“内
    Golang · Go教程   |  4个月前  |   155浏览 收藏
  • Golang 内存滑动窗口计数器实现
    Golang 内存滑动窗口计数器实现
    滑动窗口计数器不能用map+定时清理,因并发panic、锁争用、时间对齐误差和内存泄漏导致统计不准;应采用环形数组+原子操作实现真滑动,预分配槽位、懒清理、严格整除关系。
    Golang · Go教程   |  4个月前  |   405浏览 收藏
  • Golang随机数生成技巧_math_rand库使用教程
    Golang随机数生成技巧_math_rand库使用教程
    因为未设置种子,rand默认使用固定种子0,导致每次运行结果相同;应改用rand.New(rand.NewSource(time.Now().UnixNano()))并避免全局状态污染。
    Golang · Go教程   |  4个月前  |   227浏览 收藏
  • Golang结构体指针详解与使用技巧
    Golang结构体指针详解与使用技巧
    结构体指针通过引用传递实现高效数据共享与修改。Golang中结构体默认值传递,复制大对象开销大,使用指针可避免此问题;函数需修改原结构体时必须传指针,因值传递仅操作副本。Go简化指针访问,支持直接用ptr.Name而非(ptr).Name。方法若需修改接收者,应使用指针类型,否则作用于副本。常见场景包括:工厂函数返回Type、嵌套结构体用指针减少内存占用、接口实现中需修改状态时。掌握结构体指针关键在于理解其性能优势与数据共享机制。
    Golang · Go教程   |  4个月前  |   270浏览 收藏
  • IOCP模型对Go标准库影响解析
    IOCP模型对Go标准库影响解析
    Go标准库在Windows下用IOCP但不暴露裸接口,因其调度模型(GMP)与IOCP线程池不兼容,所有I/O被runtime.netpoll封装以统一跨平台行为。
    Golang · Go教程   |  4个月前  |   365浏览 收藏
  • Go 中无锁指针替换技巧解析
    Go 中无锁指针替换技巧解析
    atomic.StorePointer不能存任意指针,因要求指针指向GC可追踪的堆内存,栈地址或uintptr中转会引发悬垂引用或panic。
    Golang · Go教程   |  4个月前  |   338浏览 收藏
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    543次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    516次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    500次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    485次学习
  • Golang深入理解GPM模型
    Golang深入理解GPM模型
    Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
    474次学习
查看更多
AI推荐
  • PubMedQA数据集详解:生物医学问答基准、功能与应用指南
    PubMedQA
    深入了解PubMedQA生物医学问答数据集,涵盖其核心功能、使用方法及在临床决策、药物研发等场景的应用,助力提升NLP模型性能。
    505次使用
  • H2O EvalGPT:开源LLM大模型评估与排行榜工具
    H2O EvalGPT
    H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
    563次使用
  • LMArena是什么?伯克利AI模型评估平台使用指南与功能解析
    LMArena
    LMArena是加州大学伯克利分校推出的AI模型匿名评测平台。通过盲测投票机制,用户可对比不同大模型回答并生成实时排行榜,助力开发者优化模型及用户选择最佳AI工具。
    589次使用
  • 斯坦福HELM:大语言模型Holistic Evaluation整体评估框架详解
    HELM
    深入了解斯坦福推出的HELM(Holistic Evaluation of Language Models)大模型评测体系。本文解析其核心功能、安装配置步骤及应用场景,涵盖准确性、公平性、鲁棒性等多维度指标,助力开发者全面优化语言模型性能。
    540次使用
  • MMBench详解:多模态大模型基准测试、功能特点与使用指南
    MMBench
    MMBench是由上海人工智能实验室等机构联合推出的多模态基准测试平台,提供细粒度能力评估、大规模数据集及VLMEvalKit工具。本文详细介绍其核心功能、安装使用方法及应用场景,助力开发者全面评估多模态模型性能。
    352次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议 和 隐私政策
返回登录
  • 重置密码