ID3D11DeviceContext
The ID3D11DeviceContext interface represents a context for rendering commands within Direct3D 11. It is the primary interface used by applications to send rendering instructions to the graphics hardware. A device context can be either immediate or deferred. An immediate device context is directly associated with the ID3D11Device and executes commands synchronously. A deferred device context, on the other hand, records commands into a command list which can then be replayed later by the immediate context, allowing for asynchronous rendering and multithreading.
Key functionalities of the ID3D11DeviceContext include setting shaders, input layouts, render targets, depth-stencil views, and rasterizer