当前位置: 首页 > news >正文

Go 并发入门:从 goroutine 到 worker pool

并发编程是现代后端开发中不可或缺的能力。Go 语言(Golang)的设计哲学里,并发是“一等公民”。相比 Java 和 Python 的线程或协程模型,Go 提供了一种既轻量又直观的并发机制:goroutine + channel + select

本文将通过几个循序渐进的示例,从基础到应用,带你理解 Go 的并发核心。


1. goroutine —— 轻量级并发任务

在 Go 中,只需在函数调用前加一个 go 关键字,就能让该函数在单独的 goroutine 中执行。

package mainimport ("fmt""time"
)func task(name string) {for i := 0; i < 3; i++ {fmt.Println(name, ":", i)time.Sleep(200 * time.Millisecond)}
}func main() {go task("A")go task("B")// 主 goroutine 也在运行time.Sleep(1 * time.Second)fmt.Println("main done")
}

运行结果会交错打印,说明 A 和 B 在同时运行。

👉 关键点:<

http://www.dtcms.com/a/339937.html

相关文章:

  • 用 C++ 构建高性能测试框架:从原型到生产实战指南
  • Python 项目里的数据预处理工作(数据清洗步骤与实战案例详解)
  • 在线客服系统访客表的设计与实现-增加最新消息字段
  • Task01: CAMEL环境配置及第一个Agent
  • Kubernetes Ingress实战:从环境搭建到应用案例
  • C语言基础:(十九)数据在内存中的存储
  • Java线程池参数配置的坑:`corePoolSize=0` + `LinkedBlockingQueue`直接变成串行执行
  • Python爬虫第二课:爬取HTML静态网页之《某某小说》 小说章节和内容完整版
  • 智驾-AEB
  • 羟氯喹通过抑制抗磷脂综合征诱导的绒毛外滋养细胞过度自噬
  • 【模版匹配】基于深度学习
  • 洛谷 P2834 纸币问题 3-普及-
  • 《当 AI 学会 “思考”:大语言模型的逻辑能力进化与隐忧》
  • centos 总有new mail出现原因
  • [论文阅读] 软件工程 - 用户体验 | VR应用的无障碍性困局:基于Meta和Steam商店评论的深度剖析
  • 多幅图片拼接算法系统
  • FIFO通讯速率> 30MB/s,CH346保障FPGA与PC的高速通道稳定高效
  • 当GitHub宕机时,我们如何协作
  • 工业4.0时代,耐达讯自动化Profibus转光纤如何重构HMI通信新标准?“
  • HTML应用指南:利用GET请求获取全国新荣记门店位置信息
  • 【DAB收音机】DAB服务跟随Service Follow功能(三)【FIG 0/24:OE Services】
  • Browser Use + Playwright到AI Agent:Web自动化如何实现质变?
  • C++装饰器模式:从“勇勇”例子到实际应用
  • Day09 Go语言深入学习(1)
  • 单片机编程架构
  • AttributeError: module ‘ffmpeg‘ has no attribute ‘probe‘
  • 【光学神经网络与人工智能应用专题】
  • 力扣hot100:三数之和(排序 + 双指针法)(15)
  • 深度学习-167-MCP技术之工具函数的设计及注册到MCP服务器的两种方式
  • 零售行业新店网络零接触部署场景下,如何选择SDWAN