Bagikan melalui


ID3D12Device3::EnqueueMakeResident method (d3d12.h)

Secara asinkron membuat objek residen untuk perangkat.

Sintaks

HRESULT EnqueueMakeResident(
       D3D12_RESIDENCY_FLAGS Flags,
       UINT                  NumObjects,
  [in] ID3D12Pageable        * const *ppObjects,
  [in] ID3D12Fence           *pFenceToSignal,
       UINT64                FenceValueToSignal
);

Parameter

Flags

Jenis: D3D12_RESIDENCY_FLAGS

Mengontrol apakah objek harus dijadikan residen jika aplikasi melebihi anggaran memorinya.

NumObjects

Jenis: UINT

Jumlah objek dalam array ppObjects untuk membuat residen untuk perangkat.

[in] ppObjects

Jenis: ID3D12Pageable*

Pointer ke blok memori; berisi array penunjuk antarmuka ID3D12Pageable untuk objek.

Meskipun sebagian besar objek D3D12 mewarisi dari ID3D12Pageable, perubahan residensi hanya didukung pada hal berikut:

  • timbunan deskriptor
  • Tumpukan
  • sumber daya yang berkomitmen
  • timbunan kueri

[in] pFenceToSignal

Jenis: ID3D12Fence*

Penunjuk ke pagar yang digunakan untuk memberi sinyal ketika pekerjaan selesai.

FenceValueToSignal

Jenis: UINT64

Nilai 64-bit yang tidak ditandatangani yang disinyalkan ke pagar ketika pekerjaan selesai.

Mengembalikan nilai

Jenis: HRESULT

Metode ini mengembalikan salah satu Kode Pengembalian Direct3D 12.

Keterangan

EnqueueMakeResident melakukan tindakan yang sama dengan MakeResident, tetapi tidak menunggu sumber daya dibuat sebagai residen. Sebaliknya, EnqueueMakeResident memberi sinyal pagar ketika pekerjaan selesai.

Sistem tidak akan mengizinkan pekerjaan yang mereferensikan sumber daya yang sedang dibuat residen dengan menggunakan EnqueueMakeResident sebelum pagarnya disinyalkan. Sebaliknya, panggilan ke API ini dijamin untuk memberi sinyal pagar yang sesuai secara berurutan, sehingga pagar yang sama dapat digunakan dari panggilan ke panggilan.

Persyaratan

Persyaratan Nilai
Target Platform Windows
Header d3d12.h
Pustaka D3D12.lib
DLL D3D12.dll

Lihat juga

ID3D12Device

ID3D12Device3