A Seg, 2004-08-16 às 11:35, Gustavo J. A. M. Carneiro escreveu: > Short version: > > Can I add a variable to python to indicate whether PyEval_InitThreads > has been called? Something like: > > extern int PyEval_ThreadsInitialized; > > Motivation: > > I have discovered that, in pygtk, performance decreases a lot (50-90% > higher exectution time) when we use python locking. We have an internal > boolean flag in pygtk to indicate whether pygtk threading was enabled or > not, thus avoiding the GIL locking functions in single threaded > programs. > > The problem is that this flag is local to pygtk. If another module > activates threading in python, we would like to know it in order to > start acquiring the GIL. > > This should be a very simple patch, with zero impact in python core, > but it will help tremendously. Is likely to be accepted for python 2.4? Forget it. Why not go one step further and make all locking operations in python no-ops if PyEval_InitThreads has never been called? Currently, we risk python crashing if we call such functions without calling PyEval_InitThreads. This is also trivial to implement. Regards. -- Gustavo J. A. M. Carneiro <gjc at inescporto.pt> <gustavo at users.sourceforge.net> The universe is always one step beyond logic
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4