Message168771
Just as they do today, all externally created threads will still go to *one* interpreter when they hit PyGILState_Ensure(). It's just that interpreter won't be the main one.
Since the whole point of the PyGILState API is to support threads that don't have a previously created thread state, there's no getting around the requirement to have a single blessed interpreter that handles all externally created threads in a given process.
It will be up to mod_wsgi (and any other embedding application that uses the new function) to make sure it calls this at a time when there aren't any existing calls to PyGILState that would be disrupted. (Assuming we can't figure out a locking scheme that *ensures* no such threads are running when the switch occurs) |
|
Date |
User |
Action |
Args |
2012-08-21 14:06:09 | ncoghlan | set | recipients:
+ ncoghlan, pitrou, grahamd |
2012-08-21 14:06:08 | ncoghlan | set | messageid: <1345557968.83.0.983343835339.issue15751@psf.upfronthosting.co.za> |
2012-08-21 14:06:08 | ncoghlan | link | issue15751 messages |
2012-08-21 14:06:07 | ncoghlan | create | |
|