> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CreateCommandQueueX (XBOX One 系列)

> 在 XBOX One 上建立命令佇列。

在 XBOX One 上建立命令佇列。

## 語法

```cpp theme={null}
HRESULT CreateCommandQueueX(  
         const D3D12XBOX_COMMAND_QUEUE_DESC* pDesc,  
         REFIID riid,  
         void** ppCommandQueue  
)  
```

### 參數

*pDesc*   \_In\_<br />類型：[D3D12XBOX\_COMMAND\_QUEUE\_DESC\*](/zh-TW/reference/graphics/d3d12_x/structs/d3d12xbox_command_queue_desc)

命令佇列的描述。

*riid*   <br />類型：REFIID

命令佇列介面的全域唯一識別碼 (GUID)。若要擷取命令佇列介面的 [REFIID](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-oaut/bbde795f-5398-42d8-9f59-3613da03c318) (或 GUID)，請使用 [\_\_uuidof()](https://learn.microsoft.com/en-us/cpp/cpp/uuidof-operator?view=vs-2019) 巨集。例如，若要取得命令佇列介面的 GUID：

```cpp theme={null}
__uuidof(ID3D12CommandQueue)  
```

*ppCommandQueue*   \_Outptr\_<br />類型：void\*\*

指向記憶體區塊的指標，該區塊會接收指向命令佇列介面的指標。

### 傳回值

類型：HRESULT

其中一個 [Direct3D 12 傳回碼](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/d3d12-graphics-reference-returnvalues)。如果沒有足夠的記憶體可建立命令佇列，此方法會傳回 E\_OUTOFMEMORY。

## 備註

**CreateCommandQueueX** 擴充了 [CreateCommandQueue](https://learn.microsoft.com/en-us/windows/win32/api/d3d12/nf-d3d12-id3d12device-createcommandqueue) 函式。

在 XBOX 上，每種類型只能建立一個命令佇列，除非使用 **CreateCommandQueueX** 延伸來明確為命令佇列選取管道/引擎以及 (針對計算) 佇列索引。無論使用哪個 API，都只能建立單一圖形命令佇列。每個可用的 GPU 管道/引擎和佇列索引可建立一個計算或複製/DMA 佇列。

<Note>
  Microsoft Game Development Kit (GDK) 上的命令佇列並非安全執行緒。遊戲有責任明確同步處理對圖形、計算和複製/DMA 命令佇列的執行緒存取。若未這麼做，可能會導致佇列上發出的命令損毀，進而造成 GPU 停止回應或當機。
</Note>

## 需求

**標頭：** d3d12\_x.h

**程式庫：** d3d12\_x.lib

**支援的平台：** XBOX One 系列

## 另請參閱

[ID3D12Device](/zh-TW/reference/graphics/d3d12_x/interfaces/id3d12device/id3d12device)<br />[ID3D12CommandQueue](/zh-TW/reference/graphics/d3d12_x/interfaces/id3d12commandqueue/id3d12commandqueue)


## Related topics

- [CreateCommandQueue](/zh-TW/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_createcommandqueue_public.md)
- [XTaskQueueCreate](/zh-TW/reference/system/xtaskqueue/functions/xtaskqueuecreate.md)
- [ID3D12CommandQueue::Signal](/zh-TW/reference/graphics/d3d12/interfaces/id3d12commandqueue/methods/id3d12commandqueue_signal_public.md)
- [D3D12_COMMAND_QUEUE_PRIORITY](/zh-TW/reference/graphics/d3d12/enums/d3d12_command_queue_priority_public.md)
- [D3D12_COMMAND_QUEUE_DESC](/zh-TW/reference/graphics/d3d12/structs/d3d12_command_queue_desc_public.md)
