METODE IDXGIResource::GetSharedHandle (dxgi.h)
[Dimulai dengan Direct3D 11.1, kami sarankan untuk tidak menggunakan GetSharedHandle lagi untuk mengambil handel ke sumber daya bersama. Sebagai gantinya, gunakan IDXGIResource1::CreateSharedHandle untuk mendapatkan handel untuk berbagi. Untuk menggunakan IDXGIResource1::CreateSharedHandle, Anda harus membuat sumber daya sebagai bersama dan menentukan bahwa ia menggunakan handel NT (yaitu, Anda mengatur bendera D3D11_RESOURCE_MISC_SHARED_NTHANDLE ). Kami juga menyarankan agar Anda membuat sumber daya bersama yang menggunakan handel NT agar Anda bisa menggunakan CloseHandle, DuplicateHandle, dan sebagainya pada sumber daya berbagi tersebut.]
Mendapatkan handel ke sumber daya bersama.
Sintaks
HRESULT GetSharedHandle(
[out] HANDLE *pSharedHandle
);
Parameter
[out] pSharedHandle
Jenis: HANDEL*
Penunjuk ke handel.
Menampilkan nilai
Jenis: HRESULT
Mengembalikan salah satu nilai DXGI_ERROR .
Keterangan
GetSharedHandle mengembalikan handel untuk sumber daya yang Anda buat sebagai dibagikan (yaitu, Anda mengatur D3D11_RESOURCE_MISC_SHARED dengan atau tanpa bendera D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX ). Anda dapat meneruskan handel ini ke metode ID3D11Device::OpenSharedResource untuk memberikan akses perangkat lain ke sumber daya bersama. Anda juga dapat melakukan marshal handel ini ke proses lain untuk berbagi sumber daya dengan perangkat dalam proses lain. Namun, handel ini bukan handel NT. Oleh karena itu, jangan gunakan handel dengan CloseHandle, DuplicateHandle, dan sebagainya.
Pembuat sumber daya bersama tidak boleh menghancurkan sumber daya sampai semua entitas yang dimaksudkan telah membuka sumber daya. Validitas handel terkait dengan masa pakai memori video yang mendasarinya. Jika tidak ada objek sumber daya pada perangkat apa pun yang merujuk ke sumber daya ini, handel tidak lagi valid. Untuk memperpanjang masa pakai handel dan memori video, Anda harus membuka sumber daya bersama di perangkat.
GetSharedHandle juga dapat mengembalikan handel untuk sumber daya yang diteruskan ke ID3D11Device::OpenSharedResource untuk membuka sumber daya tersebut.
GetSharedHandle gagal jika sumber daya yang ingin ditanganinya tidak dibagikan.
Persyaratan
Target Platform | Windows |
Header | dxgi.h |
Pustaka | DXGI.lib |