It sounds like what you want is less "async output" and more "truly parallel 
execution with whatever work happens to finish earliest" winning the race. This 
is similar to the Unix process level `wait4(-1,..)` or `waitpid(-1,..)` which I 
have found quite useful from time to time, but on the finer work granularity of 
your echo example.

The Nim `threadpool` does have a `blockUntilAny` primitive with which you could 
build your sort of idea, but this issue I opened over 2 years ago still seems 
to fail: 
[https://github.com/nim-lang/Nim/issues/8201](https://github.com/nim-lang/Nim/issues/8201)

Reply via email to