同步原语

1. 常见类型

  • sync.WaitGroup
  • sync.Mutex
  • sync.RWMutex
  • sync.Once
  • sync.Cond
  • atomic 原子操作

2. 适用场景

  • 等待多个任务完成
  • 保护共享状态
  • 控制初始化只执行一次
  • 在高并发下进行无锁计数

3. 使用原则

  • 能用 Channel 表达协作时优先用 Channel
  • 需要保护共享内存时再使用锁
  • 明确锁粒度与持有时间

4. 相关链接