golang专题下共有 14093 篇文章
-
- Golang 函数:goroutine 在生产环境中的应用实例
- Goroutine是Golang中的协程,可并发执行代码,提高性能和响应能力。实战案例:Web服务器使用Goroutine处理HTTP请求,提升并发处理能力。优点:高并发性:可同时处理多个请求或任务。低开销:创建和销毁Goroutine耗时低。简单性:使用go关键字即可创建和启动Goroutine。缺点:调控复杂:需管理Goroutine数量和同时性,否则可能导致资源耗尽或死锁。调试困难:Goroutine并发执行,调试错误较难。
- Golang· Go教程 | 1年 | golang 335浏览 收藏
-
- Golang 单元测试的最佳实践有哪些?
- 为确保Go代码的正确运行,请遵循以下单元测试最佳实践:为每个函数编写一个测试(1);使用mock和stub模拟外部依赖关系(2);使用表格驱动测试验证多种输入(3);遵循行为驱动开发(BDD)(4);使用测试覆盖率工具(5)。
- Golang· Go教程 | 1年 | golang 单元测试 335浏览 收藏
-
- 匿名函数在 Golang 中的优缺点?
- 匿名函数在Golang中的优缺点匿名函数是Golang中一种方便且简洁的工具,它允许定义和使用一次性函数而无需显式命名。以下是匿名函数的一些优点和缺点:优点:代码简洁:匿名函数减少了代码的冗长度和可读性,尤其是在创建一次性函数时。灵活性:匿名函数可以通过赋值给变量或作为参数传递给其他函数来实现更灵活的使用。闭包:匿名函数可以访问外部作用域中的变量,从而创建闭包,允许在必要时访问这些变量。缺点:难以调试:由于匿名函数没有显式名称,因此在调试过程中难以识别和追踪。难以维护:随着代码库的增长,大量匿名函
- Golang· Go教程 | 1年 | golang 匿名函数 335浏览 收藏
-
- Golang并发池原理与高性能实现解析
- Golang实现高性能并发池的关键在于控制并发数量并合理分配任务。1.定义任务结构体和worker池结构体,封装任务及管理goroutine;2.创建Worker,监听任务队列并执行任务;3.创建WorkerPool,管理Worker并提供接口;4.提交任务至任务队列;5.优雅关闭确保任务完成后再退出。并发池大小应根据CPU核心数、IO密集程度及任务类型调整。监控可通过任务队列长度、worker数量、执行时间及错误率进行。任务错误处理包括重试、日志记录、熔断及错误回调。
- Golang· Go教程 | 7个月 | golang 并发池 335浏览 收藏
-
- Go中os/exec实现命令交互测试
- 使用os/exec测试Golang的CLI工具,需先创建Cmd对象并指定命令及参数,如cmd:=exec.Command("mycli","--version");接着通过Output()、CombinedOutput()或Run()执行命令并获取结果;检查退出状态码判断命令是否成功,0为成功,非0为失败;模拟用户输入可通过StdinPipe写入输入流;编写可维护测试建议封装函数并采用表格驱动测试;并发测试可用sync.WaitGroup协调;避免文件系统副作用可利
- Golang· Go教程 | 7个月 | golang 测试 CLI工具 os/exec 命令行交互 335浏览 收藏
查看更多
课程推荐
-
- Golang深入理解GPM模型
- Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
- 474次学习
-
- Go语言课程Gin框架实战
- Gin是一个用Go(Golang)编写的HTTPweb框架。它是一个类似于 martini 但拥有更好性能的API框架,由于 httprouter,速度提高了近40倍。如果你需要极好的性能,使用Gin吧。
- 339次学习
-
- Golang云原生架构师课程
- Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
- 205次学习
-
- Go编程基础视频教程
- Go是一门并发支持、垃圾回收的编译型系统编程语言,旨在创造一门具有在静态编译语言的高性能和动态语言的高效开发之间拥有良好平衡点的一门编程语言。我们收集了这套《Go编程基础视频教程》,希望能够帮助大家更好的学习go语言。
- 168次学习
-
- Golang进阶实战编程
- 本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
- 129次学习

