goroutine 共 4 篇文章

Go 映射:sync.Map 与并发安全
2026-04-03 18:50:18
Go 映射:sync.Map 与并发安全 Go 语言中的内置 map 类型在多个 goroutine 同时读写时会发生数据竞争(data race),导致程序崩溃或结果不可预测。为了解决这个问题,Go 标准库提供了 sync.Map —— 一个专为并发场景设计的线程安全映射类型。本文将手把手教你如何
Go 并发安全 sync.Map
3 0
Go 并发编程:goroutine 与 channel
2026-04-03 18:18:18
Go 并发编程:goroutine 与 channel Go 语言的并发模型基于两个核心概念:goroutine 和 channel。goroutine 是轻量级线程,由 Go 运行时自动管理;channel 是 goroutine 之间通信的管道,用于安全地传递数据。掌握这两者,就能高效编写并发程
Go 并发编程 goroutine
3 0
Go语言Select语句在超时控制中的实现模式
2026-04-02 22:36:33
Go语言Select语句在超时控制中的实现模式 Go语言通过select语句实现对多个通道(channel)操作的监听,是并发编程中处理异步事件的核心机制。其中一种高频应用场景是为操作设置超时限制,防止程序无限等待。这种模式简洁、高效,且无需额外依赖。 基本超时控制模式 最典型的超时控制通过time
Go语言 select语句 超时控制
8 0
Go 条件变量:sync.Cond 与等待通知
2026-04-02 10:26:18
Go 条件变量:sync.Cond 与等待通知 Go 语言的 sync 包提供了多种同步原语,其中 sync.Cond 是一个用于协调 goroutine 之间“等待通知”行为的条件变量。它常用于解决多个 goroutine 需要等待某个共享状态发生变化后再继续执行的问题。 何时使用 sync.Co
Go sync.Cond 条件变量
7 0