. The Quantum Renderer Thread is a slave thread that performs rendering under direction of the FX Application Thread. Once all MT issues are resolved, they should be able to run in parallel as follows: A. If the rendering takes less time than the SG update (which includes animation), the app thread will not need to wait: --------------------------------------- FX App Thread Prism Render Thread ============= =================== Update SG (1) ... ... Update SG (1) ... Pulse Listeners Queue RendJob (1) Update SG (2) Render (1) ... Update SG (2) Pulse Listeners Queue RendJob (2) Update SG (3) Render (2) ... Update SG (3) --------------------------------------- B. If the rendering takes more time than the SG update, the app thread will wait in the Pulse Listeners (which is where PG sync happens): --------------------------------------- FX App Thread Prism Render Thread ============= =================== Update SG (1) ... ... Update SG (1) ... Pulse Listeners Queue RendJob (1) Update SG (2) Render (1) ... ... Render (1) Pulse Listeners Queue RendJob (2) Update SG (3) Render (2) ... ... Render (2) Pulse Listeners Queue RendJob (3)