ID3D11Device2::CreateDeferredContext2 method (d3d11_2.h)

Membuat konteks yang ditangguhkan, yang dapat merekam daftar perintah.

Sintaks

HRESULT CreateDeferredContext2(
                  UINT                 ContextFlags,
  [out, optional] ID3D11DeviceContext2 **ppDeferredContext
);

Parameter

ContextFlags

Jenis: UINT

Disiapkan untuk penggunaan masa mendatang. Lulus 0.

[out, optional] ppDeferredContext

Jenis: ID3D11DeviceContext2**

Setelah menyelesaikan metode, pointer yang diteruskan ke penunjuk antarmuka ID3D11DeviceContext2 diinisialisasi.

Mengembalikan nilai

Jenis: HRESULT

Mengembalikan S_OK jika berhasil; jika tidak, mengembalikan salah satu hal berikut:

  • Mengembalikan DXGI_ERROR_DEVICE_REMOVED jika kartu video telah dihapus secara fisik dari sistem, atau peningkatan driver untuk kartu video telah terjadi. Jika kesalahan ini terjadi, Anda harus menghancurkan dan membuat ulang perangkat.
  • Mengembalikan DXGI_ERROR_INVALID_CALL jika metode CreateDeferredContext2 tidak dapat dipanggil dari konteks saat ini. Misalnya, jika perangkat dibuat dengan nilai D3D11_CREATE_DEVICE_SINGLETHREADED , CreateDeferredContext2 mengembalikan DXGI_ERROR_INVALID_CALL.
  • Mengembalikan E_INVALIDARG jika parameter ContextFlags tidak valid.
  • Mengembalikan E_OUTOFMEMORY jika aplikasi telah kelelahan dengan memori yang tersedia.

Keterangan

Konteks yang ditangguhkan adalah konteks aman utas yang dapat Anda gunakan untuk merekam perintah grafik pada utas selain utas penyajian utama. Dengan menggunakan konteks yang ditangguhkan, Anda dapat merekam perintah grafis ke dalam daftar perintah yang dienkapulatasi oleh antarmuka ID3D11CommandList . Setelah merekam semua item adegan, Anda kemudian dapat mengirimkannya ke utas render utama untuk penyajian akhir. Dengan cara ini, Anda dapat melakukan tugas penyajian secara bersamaan di beberapa utas dan berpotensi meningkatkan performa dalam skenario CPU multi-inti.

Anda dapat membuat beberapa konteks yang ditangguhkan.

Catatan Jika Anda menggunakan nilai D3D11_CREATE_DEVICE_SINGLETHREADED untuk membuat perangkat, CreateDeferredContext2 gagal dengan DXGI_ERROR_INVALID_CALL, dan Anda tidak dapat membuat konteks yang ditangguhkan.
 
Untuk informasi selengkapnya tentang konteks yang ditangguhkan, lihat Rendering Segera dan Ditangguhkan.

Persyaratan

   
Klien minimum yang didukung Windows 8.1 [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2012 R2 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header d3d11_2.h
Pustaka D3D11.lib

Lihat juga

ID3D11Device1::CreateDeferredContext1

ID3D11Device2

ID3D11Device3::CreateDeferredContext3

ID3D11Device::CreateDeferredContext