Skip to content

並發

parallel 套件為 Go 提供並發模式及原語,幫助開發者編寫高效的並行程式。

模組

Barrier

允許多個 Goroutine 互相等待的同步原語。

特性:

  • 循環屏障實現
  • 支援條件變數
  • 線程安全操作

Limiter

用於控制操作速率的速率限制器。

特性:

  • 靜態速率限制
  • 令牌桶演算法
  • 可配置的時間間隔

Mutex

簡單的互斥鎖實現。

特性:

  • 基本的 Lock/Unlock 操作
  • 基於 Channel 實現
  • 簡單高效

Pipeline

用於數據處理的 Pipeline 模式。

特性:

  • Fan-in 及 Fan-out 模式
  • 廣播模式
  • Take 操作
  • 可組合的 Pipeline 階段

Worker Pool

用於管理並發任務的 Worker Pool 模式。

特性:

  • 固定大小的 Worker Pool
  • 任務隊列
  • 優雅關閉

PubSub

發布-訂閱模式實現。

特性:

  • 多個訂閱者
  • 基於主題的消息傳遞
  • 異步消息傳遞

Read-Write Lock

支援多個讀取者或單個寫入者的讀寫鎖。

特性:

  • 多個並發讀取者
  • 獨佔寫入者存取
  • 無飢餓實現

Semaphore

用於限制資源並發存取的信號量。

特性:

  • 可配置的許可數
  • Acquire/Release 操作
  • Channel 及條件變數實現

Released under the MIT License.