Last Updated: May 22, 2026
A done channel is a single channel passed to every goroutine that needs to know when to stop. Closing it broadcasts a "shut down now" signal to every listener at once. This is how Go code coordinated cancellation before context.Context existed, and it still works well when you don't need deadlines, values, or call-tree propagation.