For what it's worth, I've been using DispatchQueue.concurrentPerform on my
own projects that run on both Darwin and Linux and it's worked well for
both. I haven't noticed the issue you're describing.
Perhaps you could include a repro case that demonstrates this behavior?
PS: However, my Swift
+1 from me.
I ended up making a wrapper objc->swift around system() since it was removed
from swift recently, however, it behaves (from a user standpoint) exactly how
I’d like. If my command line util jumps out to another program and it needs
stdin/out/err, it all just passes through which is
Why does it imply a run loop rather than one of many multithreading
possibilities (dispatch queue, starting one more thread, etc)? And even if it
did use run loops, why is that a problem?
In general we have been discouraging the use of synchronous and blocking API
for many years now. It’s