global interpreter lock not working as it should
a-steinhoff at web.de
Thu Aug 1 18:41:52 CEST 2002
Michael Hudson <mwh at python.net> wrote in message news:<lklm7qgbc6.fsf at pc150.maths.bris.ac.uk>...
> a-steinhoff at web.de (Armin Steinhoff) writes:
> > The 'problem' is that Python threads are not fully comparable with
> > system level threads. Python threads are managed (scheduled) at
> > _interpreter level_!!
> > The important difference is that Python threads can't use e.g.
> > blocking I/O calls ... a blocking I/O call used in a Python thread
> > will block the whole interprete!!.
> This is just not true.
Sorry ... your statement is simply wrong.
>From the thread docs ... section caveats:
> Not all built-in functions that may block waiting for I/O allow other threads >to run. (The most popular ones (time.sleep(), file.read(),
>select.select()) work as expected.)
Yes ... only the most 'popular' ones are working (because there is only ONE
system thread (or process) spent for the interpreter)
More information about the Python-list