Message54730
Logged In: YES
user_id=341410
How many worker threads do you expect? If you work the
sys.setcheckinterval() just right, you may be able to
prioritize your threads...
Any C library which does not acquire and release the GIL
when it is supposed to is broken. Claiming that Python is
broken in relation to C libraries being broken is misplaced
blame.
Python uses a GIL because it makes interaction with Python
objects easier across threads. There have been previous
failed efforts to make Python scalable across multiple
processors; search for "python free threading" on google to
see all of the relevant information about rewriting the
Python interpreter with multiple processors in mind.
Alternatively, you can always use one of the half-dozen
parallel processing libraries for Python to distribute your
work onto different processors, who all synchronize up with
the main GUI process. Some are quite intuitive (check out
Kamaelia), and will work today (any effort to get a 'free
threading' idea into Python core will have to wait until at
least Python 2.6, which is at least 2 years away). |
|
Date |
User |
Action |
Args |
2007-08-23 16:11:38 | admin | link | issue1432694 messages |
2007-08-23 16:11:38 | admin | create | |
|