How do I find out if a goroutine is done, without blocking?
问题 All the examples I've seen so far involve blocking to get the result (via the <-chan operator). My current approach involves passing a pointer to a struct: type goresult struct { result resultType; finished bool; } which the goroutine writes upon completion. Then it's a simple matter of checking finished whenever convenient. Do you have better alternatives? What I'm really aiming for is a Qt-style signal-slot system. I have a hunch the solution will look almost trivial ( chan s have lots of