Hacker News new | past | comments | ask | show | jobs | submit login

Python, Go and Ruby do not have the ability to run multiple real OS threads that can run on separate cores and share process memory at the same time.

They might try to work around that, but they will never be able to run one common task to/from many sockets on all cores of one machine at the same time.




Yes, they do. Python does. I'm sorry but your wires are getting crossed somewhere. You also completely ignored the comment you where replying to and the sources he cites for you and repeated essentially the same thing you said before. This is quite rude.

Python has a GIL, so only one thread can interact with the Python interpreter at one time. You can have any number of threads running at one time if they release the GIL and don't touch the interpreter (i.e if they are doing IO or calling a C function).

They, however, are still real OS threads, running (waiting for a lock) on separate cores and sharing process memory. That's the definition of a thread. They are not fake threads. They share memory. They run on separate cores (perhaps).

I'm not sure what your last sentence means.


This is not technically true, but often is practically so. No matter, it has no bearing at all on the concept of "async" as modeled or in contexts you've discussed.

I'm not sure why you're trying to salvage this or what your endgame is here but please reconsider.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: