Bagikan melalui


METODE IDXGIDevice3::Trim (dxgi1_3.h)

Memangkas memori grafis yang dialokasikan oleh perangkat IDXGIDevice3 DXGI atas nama aplikasi.

Untuk aplikasi yang dirender dengan DirectX, driver grafis secara berkala mengalokasikan buffer memori internal untuk mempercepat permintaan penyajian berikutnya. Alokasi memori ini dihitung terhadap penggunaan memori aplikasi untuk PLM dan secara umum menyebabkan peningkatan penggunaan memori oleh sistem keseluruhan.

Mulai Windows 8.1, aplikasi yang dirender dengan Direct2D dan/atau Direct3D (termasuk interop CoreWindow dan XAML) harus memanggil Trim sebagai respons terhadap panggilan balik penangguhan PLM. Runtime Direct3D dan driver grafis akan membuang buffer memori internal yang dialokasikan untuk aplikasi, mengurangi jejak memorinya.

Memanggil metode ini tidak mengubah status penyajian perangkat grafis dan tidak berpengaruh pada operasi penyajian. Ada hit performa singkat ketika buffer internal direalokasikan selama operasi penyajian pertama setelah panggilan Pangkas , oleh karena itu aplikasi hanya boleh memanggil Pangkas saat menganggur untuk jangka waktu tertentu (sebagai respons terhadap penangguhan PLM, misalnya).

Aplikasi harus memastikan bahwa mereka memanggil Pangkas sebagai salah satu operasi D3D terakhir yang dilakukan sebelum menganggur. Direct3D biasanya akan menangguhkan penghancuran objek D3D. Namun, memanggil Trim memaksa Direct3D untuk segera menghancurkan objek. Untuk alasan ini, tidak dijamin bahwa merilis referensi akhir pada objek Direct3D setelah memanggil Trim akan menyebabkan objek dihancurkan dan memori dibatalkan alokasinya sebelum aplikasi ditangguhkan.

Mirip dengan ID3D11DeviceContext::Flush, aplikasi harus memanggil ID3D11DeviceContext::ClearState sebelum memanggil Trim. ClearState menghapus pengikatan alur Direct3D, memastikan bahwa Direct3D tidak menyimpan referensi apa pun ke objek Direct3D yang coba Anda rilis.

Juga bijaksana untuk merilis referensi pada middleware sebelum memanggil Trim, karena middleware tersebut mungkin juga perlu merilis referensi ke objek Direct3D.

Sintaks

void Trim();

Mengembalikan nilai

Tidak ada

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 dxgi1_3.h
Pustaka Dxgi.lib

Lihat juga

IDXGIDevice3