541
Synapse is the epitome of this
(i.redd.it)
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
~~Now do computation in those threads and realize that they all wait on the GIL giving you single core performance on computation and multi threaded performance on io.~~
Correct, which is why before I had said
Ups, my attention got trapped by the code and I didn't properly read the comment.
Isn't that what threading is? Concurrency always happens on single core. Parallelism is when separate threads are running on different cores. Either way, while the post is meant to be humorous, understanding the difference is what prevents people from picking up the topic. It's really not difficult. Most reasons to bypass the GIL are IO bound, meaning using threading is perfectly fine. If things ran on multiple cores by default it would be a nightmare with race conditions.
I haven't heard of that being what threading is, but that threading is about shared resourcing and memory space and not any special relationship with the scheduler.
Per the wiki:
https://en.m.wikipedia.org/wiki/Thread_(computing)
I also think you might be misunderstanding the relationship between concurrency and parallelism; they are not mutually exclusive. Something can be concurrent through parallelism, as the wiki page has (emphasis mine):
https://en.m.wikipedia.org/wiki/Concurrency_(computer_science)