From 02123df8cc15896f97c1580e49d8e2a991e37ddd Mon Sep 17 00:00:00 2001 From: sangtran Date: Thu, 3 Sep 2026 23:10:33 +0700 Subject: Moving all legacy quacker source code from github to cgit --- fanin/fanin_bench_test.go | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 fanin/fanin_bench_test.go (limited to 'fanin/fanin_bench_test.go') diff --git a/fanin/fanin_bench_test.go b/fanin/fanin_bench_test.go new file mode 100644 index 0000000..1141224 --- /dev/null +++ b/fanin/fanin_bench_test.go @@ -0,0 +1,36 @@ +package fanin + +import ( + "testing" +) + +func BenchmarkFanIn(b *testing.B) { + b.ReportAllocs() + + fi, _ := NewFanIn[int](WithBufferSize(64)) + + producers := 4 + chs := make([]chan int, producers) + for i := range chs { + chs[i] = make(chan int, 64) + fi.Add(chs[i]) + } + + out := fi.Run(b.Context()) + + // Drain output + go func() { + for range out { + } + }() + + for b.Loop() { + chs[b.N%producers] <- 1 + } + + for _, ch := range chs { + close(ch) + } + + <-fi.Done() +} -- cgit v1.3.1