Microsoft DirectX 9.0


The WaitForReceiveToComplete method waits for the CBaseRenderer::Receive method to complete.


void WaitForReceiveToComplete(void);


The CBaseRenderer::Stop and CBaseRenderer::BeginFlush methods call this method to synchronize the state change with the Receive method.

Specifically, this method dispatches messages while it waits for the CBaseRenderer::m_bInReceive flag to become FALSE. The flag becomes TRUE in the CBaseRenderer::PrepareReceive method and switches back to FALSE after the Receive method calls the CBaseRenderer::PrepareRender method. The derived class can use PrepareRender to set the palette. Waiting for PrepareRender to complete ensures that palette-change messages are dispatched before the state change occurs. This avoids a potential deadlock.

See Also