You could close(done). It doesn't block, thus you won't have to allocate a buffer.
chan struct{} would take even less space and WaitGroup seems unnecessary in this code -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.