ImageEngine/gaffer — pull request #1091 by johnhaddon (2014-11-20 18:22:52+00:00)
Title: Fixed deadlocks if computes spawn their own threads

We need to release the GIL on the thread which requests the compute, so that if the compute spawns threads, they can enter into Python. The only example we have of this right now is the Instancer when getting the bounds, but I've fixed all the ValuePlug::getValue() bindings too for good measure.

Only the last two commits are unique to this pull request - the others are in #1089. I needed to build on that because it has made changes to the python bindings as well. This also requires ImageEngine/cortex#358.

It would be really helpful to me if we could get all these pull requests merged. I want to continue testing the viewer stuff through my daily work, but that's tricky if I'm trying to make my subsequent pull requests relative to master (which I failed to do here already). If you're worried about merging it in case we need to get a patch out before we've done enough testing, perhaps we could make a maintenance branch?