I’ve read the relevant articles on structured concurrency, and I don’t see what it buys you.
To be honest, in all my time writing threaded code, I have never once worried about the lifetime of threads. If I wanted to shut threads down in a certain order, I’d just use condition variables to have the latter threads wait on the former threads’ shutdown sequences. Is this just a more readable way of implementing that sort of thing? Which, well, great, but with a name like “structured concurrency” I’d expect a larger paradigm shift than that.
It’s just like replacing goto with while/for/if back in 60′s. Not a big deal technically. Big deal in the terms of abstraction. Also, don’t think about about OS threads. Every time there’s a state machine somewhere it’s just a green thread in disguise.
I’ve read the relevant articles on structured concurrency, and I don’t see what it buys you.
To be honest, in all my time writing threaded code, I have never once worried about the lifetime of threads. If I wanted to shut threads down in a certain order, I’d just use condition variables to have the latter threads wait on the former threads’ shutdown sequences. Is this just a more readable way of implementing that sort of thing? Which, well, great, but with a name like “structured concurrency” I’d expect a larger paradigm shift than that.
It’s just like replacing goto with while/for/if back in 60′s. Not a big deal technically. Big deal in the terms of abstraction. Also, don’t think about about OS threads. Every time there’s a state machine somewhere it’s just a green thread in disguise.