工程師筆記
Golang 神器 singleflight
什麼是 singleflight? singleflight 是 Go 語言中的一個包,用於抑制對同一資源的重複請求。它確保在同一時間只執行一次對特定資源的操作,而其他並發請求則等待並共享結果。 使用 singleflight 的步驟 1. 導入 singleflight 包: import "golang.org/x/sync/singleflight" 2. 創建一個 Group 對象: var g singleflight.Group 3. 使用 Do 方法執行函數: result, err, _ := g.Do("key", func() (interface{}, error) { // 執行實際操作 return "result&