Message168776
My understanding of the mod_wsgi architecture is that it uses subinterpreters to maintain a persistent process, while still providing a relatively pristine interpreter state to handle each new request. This means even when you're using multiple processes with a single request handling thread per process, you're running a subinterpreter unless you explicitly configure mod_wsgi to always run in the main interpreter (which, I believe, will result in additional state persistence across requests).
The proposed API change can only fix scenarios where *at a given point in time*, *all* PyGILState_Ensure calls should be directed to a particular subinterpreter. The target subinterpreter may change *later*, but there still cannot be two desired targets within the same process at the same time.
However, at the moment, PyGILState doesn't even allow that - all externally created threads are handled in the *main* interpreter even if that isn't what the embedding application wants. |
|
Date |
User |
Action |
Args |
2012-08-21 14:33:44 | ncoghlan | set | recipients:
+ ncoghlan, pitrou, grahamd |
2012-08-21 14:33:44 | ncoghlan | set | messageid: <1345559624.38.0.254577276692.issue15751@psf.upfronthosting.co.za> |
2012-08-21 14:33:43 | ncoghlan | link | issue15751 messages |
2012-08-21 14:33:43 | ncoghlan | create | |
|