docs: 计划Task6测试确定性修正(singleflight 仅 in-flight 去重, fn 加 50ms sleep)

This commit is contained in:
2026-09-01 10:44:09 +08:00
parent 21447b67db
commit ea949a4b66
@@ -704,9 +704,12 @@ package service
import (
"sync"
"testing"
"time"
)
// analyzeOnce 应合并并发同键分析请求,只执行一次 fn
// 注:singleflight 仅对 in-flight 请求去重,故 fn 内须 sleep(50ms) 拉长执行窗口,
// 否则 10 个 goroutine 未必都在首个完成前启动,calls==1 断言会间歇失败(计划原版因此非确定,已修)。
func TestAnalyzeOnceDedup(t *testing.T) {
var mu sync.Mutex
calls := 0
@@ -714,6 +717,7 @@ func TestAnalyzeOnceDedup(t *testing.T) {
mu.Lock()
calls++
mu.Unlock()
time.Sleep(50 * time.Millisecond)
return true, "dedup"
}
var wg sync.WaitGroup