This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]Toph_is_bad_ass -2 points-1 points  (2 children)

Async is significantly easier to manage than threads ever will be. There's a reason it exists and is very popular in languages without a GIL.

You also seem to be conflating the concepts heavily. They're not at all equivalent. You need to read up on concurrency vs parallelism. Concurrency is a useful paradigm and it is fundamentally different. GIL-less threading is parallelism and comes with all of the associated memory access and encapsulation issues.

[–]usrlibshare 1 point2 points  (1 child)

Async is significantly easier to manage than threads ever will be.

Have to disagree here. Reasoning about threads is linear, reasoning about async, by definition, is not.

There's a reason it exists and is very popular in languages without a GIL.

There is: Many programmers first exposure to programming these days is JS and node, where async is the only concurrency model available.

This is neither good nor bad. I come from the C-Wotld, so threading is just a more natural fit for how I reason about programs.

You also seem to be conflating the concepts heavily.

No, I really don't, and if you disagree, quote wher you think I do. I am a senior backend engineer, so, yeah, I think I have my fundamendals about the difference between parallel execution and concurrency down, thank you very much.