As discussed on the mailing list: SWIG does not generate modules compatible with multiple python interpreters.
Bug #1: Infinite loop in the initialization function
Bug #2: There was some issue with the delete function
Bug #3: Each swig module loaded per interpreter leaks memory (horribly if your module is big)
Bug #4: If you start two interpreters and import swig modules in each (simultaneously), after ending the first interpreter, the second interpreter sometimes has cleaned up all of its swig objects, with tragic results
interpreter2's swiga may be corrupted.
Bug #4: The static objects created in the object_swigregister functions are shared between interpreters, which allows them to get deleted by one interpreter and have that cross over into the other interpreter.