Skip to content
  • Utkarsh Ayachit's avatar
    Refactoring use of embedded Python in ParaView. · cd547dbd
    Utkarsh Ayachit authored
    ParaView relied on using Py_NewInterpreter() for creating separate pyhton
    interpreters in the application. Py_NewInterpreter() causes issues with Python
    threading (esp. GIL related things). As a result we decided to refactor Python
    embedding in ParaView/VTK (VTK too since the introduction on Matplotlib).
    
    The new design uses a global Python interpreter (used by all filters including
    Matplotlib rendering code) with the ability to create interactive interpreter
    (for the PythonShell).
    
    On disconnect, we only discard the interactive interpreter, thus the global
    Python interpreter remains active. We will cleanup servermanager and simply
    Python Modules in subsequent commits to work correctly with long live Python
    interpreters.
    
    Change-Id: I705b024542e2598ca55d62d32de7e7d704f48e79
    cd547dbd