Skip to main content
Journey Uncommon Logo
JourneyUncommon
mediumGoworker pool patternSingle-choice MCQ

A worker pool fans results back on a results channel. What is the safe way to close results so the consumer's `for r := range results` terminates without a panic?

var wg sync.WaitGroup // N workers, each: defer wg.Done(); results <- compute(job) go func() { wg.Wait() close(results) }() for r := range results { use(r) }