当前位置:首页 > 文章列表 >golang

golang
golang专题下共有 14132 篇文章
  • Golang对象池优化,sync.Pool详解
    Golang对象池优化,sync.Pool详解
    对象池模式在Golang中通过复用对象减少GC压力并提高性能,其核心实现是sync.Pool。1.定义池时需创建sync.Pool实例并提供New函数用于初始化对象;2.使用Get方法获取对象,若池为空则调用New创建;3.使用完后通过Put方法归还对象以便复用。适用场景包括高并发、短生命周期、创建成本高的无状态对象,如缓冲区或连接资源。限制包括不保证对象存活、不保持顺序及不适合有状态对象。优化要点包括根据实际场景调整池大小、避免内存泄漏、在Put前重置对象状态以防止数据残留和循环引用。
    Golang· Go教程   |  6个月  |   golang 对象池 sync.Pool GC压力 资源复用 285浏览 收藏
  • Golang文件读写与目录遍历技巧
    Golang文件读写与目录遍历技巧
    答案:Golang文件操作依赖os和io包,通过os.File、io.Reader、io.Writer及os包函数实现文件创建、读写、目录遍历;使用os.Create创建文件,file.Write或WriteString写入数据,os.Open结合file.Read读取内容,filepath.Walk遍历目录;大文件读取推荐bufio.NewReader逐行处理;错误需逐层检查并用defer关闭文件;文件是否存在可通过os.Stat和os.IsNotExist判断。
    Golang· Go教程   |  6个月  |   golang 文件操作 目录遍历 os包 io包 286浏览 收藏
  • Golang实现Saga分布式事务方案
    Golang实现Saga分布式事务方案
    Saga模式通过将长事务拆分为多个带补偿操作的本地事务来解决分布式事务问题,Golang结合协调式Saga与消息队列可实现高可靠、易维护的分布式事务系统。
    Golang· Go教程   |  6个月  |   golang 消息队列 分布式事务 Saga模式 补偿操作 396浏览 收藏
  • Golang状态模式实现与接口管理解析
    Golang状态模式实现与接口管理解析
    状态模式在Golang中通过定义状态接口、实现具体状态类型、使用上下文对象管理状态转换来实现,适用于网络连接管理、订单流程、游戏角色控制等具有多状态和状态转换的场景,可通过状态合并、表驱动、职责链或与策略模式结合来避免状态爆炸,并支持通过CanTransition方法、状态转换表或监听器机制实现复杂的转换逻辑,从而在保证代码清晰的同时灵活应对复杂业务需求。
    Golang· Go教程   |  6个月  |   golang 接口 状态模式 状态转换 状态爆炸 340浏览 收藏
  • Golang单例实现:sync.Once线程安全解析
    Golang单例实现:sync.Once线程安全解析
    sync.Once通过确保初始化函数只执行一次来实现线程安全的单例。1.使用包级变量保存单例实例;2.通过GetInstance方法调用once.Do进行初始化;3.初始化逻辑仅在首次调用时执行,后续调用直接返回已有实例。应用场景包括配置管理、日志记录器、数据库连接池和缓存服务。注意事项:Do方法仅接受无参函数,避免长时间阻塞,不可复用Once对象,多个初始化步骤需合并到一个函数中。
    Golang· Go教程   |  6个月  |   golang 初始化 线程安全 单例模式 sync.Once 483浏览 收藏
  • Golang指针优化性能,减少大对象拷贝
    Golang指针优化性能,减少大对象拷贝
    Go函数参数默认值传递,大对象传参应使用指针以避免内存拷贝开销。1.值传递复制整个结构体,开销大;2.指针传递仅传递地址,性能更优;3.对大结构体或含slice、map的类型优先用指针;4.小对象值传递更高效,避免过度使用指针。
    Golang· Go教程   |  6个月  |   golang 性能优化 值传递 指针传递 大对象拷贝 318浏览 收藏
查看更多
课程推荐
  • Golang深入理解GPM模型
    Golang深入理解GPM模型
    Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
    474次学习
  • Go语言课程Gin框架实战
    Go语言课程Gin框架实战
    Gin是一个用Go(Golang)编写的HTTPweb框架。它是一个类似于 martini 但拥有更好性能的API框架,由于 httprouter,速度提高了近40倍。如果你需要极好的性能,使用Gin吧。
    339次学习
  • Golang云原生架构师课程
    Golang云原生架构师课程
    Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
    205次学习
  • Go编程基础视频教程
    Go编程基础视频教程
    Go是一门并发支持、垃圾回收的编译型系统编程语言,旨在创造一门具有在静态编译语言的高性能和动态语言的高效开发之间拥有良好平衡点的一门编程语言。我们收集了这套《Go编程基础视频教程》,希望能够帮助大家更好的学习go语言。
    168次学习
  • Golang进阶实战编程
    Golang进阶实战编程
    本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
    129次学习
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码