共用方式為


使用多執行緒建立物件

使用 ID3D11Device 介面來建立資源和物件,請使用 ID3D11DeviceCoNtext 進行 轉譯

以下是如何建立資源的一些範例:

多執行緒考慮

資源建立和轉譯的並行程度,取決於驅動程式所實作的多執行緒支援層級。 如果驅動程式支援並行建立,則應用程式應該會有較少的並行考慮。 不過,如果驅動程式不支援並行物件建立,平行存取的數量會非常有限。 若要瞭解驅動程式中可用的支援數量,請查詢驅動程式以取得D3D11_FEATURE_DATA_THREADING結構之DriverConcurrentCreates成員的值。 如需檢查多執行緒驅動程式支援的詳細資訊,請參閱 如何:檢查驅動程式支援

並行作業不一定會導致效能更佳。 例如,建立和載入紋理通常會受限於記憶體頻寬。 嘗試建立和載入多個紋理的速度可能不如一次執行一個紋理,即使這讓多個 CPU 核心閒置也一樣。 不過,使用多個執行緒建立多個著色器會增加效能,因為此作業較不相依于記憶體頻寬等系統資源。

當驅動程式和圖形硬體支援多執行緒時,您通常會透過在呼叫 ID3D11Device::CreateTexture2D方法 () ,將pInitialData參數中的指標傳遞給初始資料,以更有效率地初始化新建立的資源。

多執行緒