On Jul 22, 12:04 pm, Paul Rubin <http://phr...@nospam.invalid> wrote: > Carl Banks <pavlovevide...@gmail.com> writes: > > > Why is that such an advantage? Green threads work fine if you just > > > organize the i/o system to never block. > > > Because then I don't have to organize the I/O system never to block. > > We're talking about what a language implementation does behind the > scenes, I thought.
No we're not, we are talking about the whether GIL completely or only partially undermines the use of native threads on Python. I don't think your fantasy async-only all-green-thread langauge implementation is possible anyway. How would you wait on a pipe in one thread, a socket in another, a semaphore in a third? (Are there any popular OSes that offer a unified polling interface to all possible synchronizations?) And what do you do about drivers or libraries that make underlying blocking calls? What if you have a busy calculation going on in the background? Carl Banks -- http://mail.python.org/mailman/listinfo/python-list