IDXGISurface1
GetDC/ReleaseDC
使用 创建的纹理的线程安全规则是D3D11_RESOURCE_MISC_GDI_COMPATIBLE
什么?
我是否可以在另一个线程之间进行交互,ID3D11Device
而不会由于隐式同步而导致数据争用或阻塞?或者我是为了避免 GPU 空闲被迫为执行 GDI 渲染的线程创建一个单独的线程,然后通过复制将其传输回“主” ?ID3D11DeviceContext
GetDC
ReleaseDC
D3D11Device
D3D11Device
D3D11_RESOURCE_MISC_SHARED_KEYED_MUTEX
即以下有效吗?
thread 1:
D3D11Device::CreateTexture2D // Create texture 1
IDXGISurface1::GetDC // Get DC for texture 1
... // Draw to texture1 using GDI
IDXGISurtface1::ReleaseDC // Release DC for texture1
thread 2:
// Is this valid if thread 1 is drawing using GDI?
D3D11DeviceContext::OMSetRenderTargets
D3D11DeviceContext::Draw // Draw texture2.