> ## 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.

# DispatchX (família XBOX One)

> Executa uma lista de comandos a partir de um grupo de threads.

Executa uma lista de comandos a partir de um grupo de threads.

## Sintaxe

```cpp theme={null}
void DispatchX(  
         UINT ThreadGroupCountX,  
         UINT ThreadGroupCountY,  
         UINT ThreadGroupCountZ,  
         D3D12XBOX_DISPATCH_FLAGS Flags  
)  
```

### Parâmetros

*ThreadGroupCountX*   \_In\_<br />Tipo: UINT

O número de grupos despachados na dimensão x. Deve ser menor ou igual a D3D12\_CS\_DISPATCH\_MAX\_THREAD\_GROUPS\_PER\_DIMENSION (65535).

*ThreadGroupCountY*   \_In\_<br />Tipo: UINT

O número de grupos despachados na dimensão y. Deve ser menor ou igual a D3D12\_CS\_DISPATCH\_MAX\_THREAD\_GROUPS\_PER\_DIMENSION (65535).

*ThreadGroupCountZ*   \_In\_<br />Tipo: UINT

O número de grupos despachados na dimensão z. Deve ser menor ou igual a D3D12\_CS\_DISPATCH\_MAX\_THREAD\_GROUPS\_PER\_DIMENSION (65535). No nível de recurso 10, o valor de ThreadGroupCountZ deve ser 1.

*Flags*   \_In\_<br />Tipo: [D3D12XBOX\_DISPATCH\_FLAGS](/pt-BR/reference/graphics/d3d12_x/enums/d3d12xbox_dispatch_flags)

Sinalizadores para controlar esta operação, como uma combinação OR bit a bit de constantes de enumeração **D3D12XBOX\_DISPATCH\_FLAGS**.

### Valor retornado

Tipo: void

## Comentários

Use este método para especificar diretamente os parâmetros do iniciador de despacho. Se o sombreador estiver usando Ordered Append, você deverá definir **D3D12XBOX\_DISPATCH\_FLAG\_ENABLE\_ORDERED\_APPEND** no despacho para evitar que a GPU trave.

Você chama este método para executar comandos em um [sombreador de computação](https://learn.microsoft.com/en-us/windows/desktop/direct3d11/direct3d-11-advanced-stages-compute-shader). Dentro de um grupo de threads, um sombreador de computação pode ser executado em muitos threads em paralelo. Para indexar um thread específico dentro de um grupo de threads, use um vetor 3D especificado como (x,y,z).

Para a ilustração a seguir, suponha que o grupo de threads tenha 50 threads e que o tamanho do grupo seja (5,5,2). Um único thread é identificado em um grupo de threads com 50 threads usando o vetor (4,1,1).

Figura 1. Ilustração de um único thread dentro de um grupo de 50 threads

<img src="https://mintcdn.com/microsoft-4404708b/5IpvKlT-jmAaVkeY/images/nda/d3d11_thread_group_1.png?fit=max&auto=format&n=5IpvKlT-jmAaVkeY&q=85&s=67cef6acd160adffad7dd767063bd8b4" alt="Diagrama de um vetor para um único thread em um grupo de threads." width="240" height="137" data-path="images/nda/d3d11_thread_group_1.png" />

A ilustração a seguir mostra a relação entre os parâmetros passados para Dispatch (ou DispatchX), Dispatch(5,3,2), os valores especificados no atributo *numthreads*, numthreads(10,8,3), e os valores passados para o sombreador de computação para os valores de sistema relacionados a threads: SV\_GroupIndex, SV\_DispatchThreadID, SV\_GroupThreadID e SV\_GroupID.

Figura 2.  A relação entre Dispatch (ou DispatchX), grupos de threads e threads

<img src="https://mintcdn.com/microsoft-4404708b/5IpvKlT-jmAaVkeY/images/nda/threadgroupids.png?fit=max&auto=format&n=5IpvKlT-jmAaVkeY&q=85&s=2da22e8b2a470f74686450e1aa768b3b" alt="Diagrama que mostra as relações entre os parâmetros fornecidos aos métodos Dispatch e DispatchX para contagens de grupos de threads e os grupos de threads individuais, e a relação entre um grupo de threads e seus threads individuais, para ilustrar como os vários valores de sistema relacionados a threads passados para o sombreador de computação são identificados." width="666" height="615" data-path="images/nda/threadgroupids.png" />

Esta é a versão específica do XBOX do método Dispatch. Para obter informações adicionais sobre a versão genérica do Direct3d 12 do método, consulte [Dispatch](https://learn.microsoft.com/en-us/windows/win32/api/d3d12/nf-d3d12-id3d12graphicscommandlist-dispatch).

## Requisitos

**Cabeçalho:** d3d12\_x.h

**Biblioteca:** d3d12\_x.lib

**Plataformas com suporte:** família XBOX One

## Confira também

[ID3D12GraphicsCommandList](/pt-BR/reference/graphics/d3d12_x/interfaces/id3d12graphicscommandlist/id3d12graphicscommandlist)


## Related topics

- [Dispatch](/es/reference/graphics/d3d12/interfaces/id3d12graphicscommandlist/methods/id3d12graphicscommandlist_dispatch_public.md)
- [IGameInputDispatcher::Dispatch](/es/reference/input/gameinput/interfaces/IGameInputDispatcher/methods/igameinputdispatcher_dispatch.md)
- [XTaskQueueDispatch](/es/reference/system/xtaskqueue/functions/xtaskqueuedispatch.md)
- [XTaskQueueDispatchMode](/es/reference/system/xtaskqueue/enums/xtaskqueuedispatchmode.md)
- [D3D12_DISPATCH_ARGUMENTS](/es/reference/graphics/d3d12/structs/d3d12_dispatch_arguments_public.md)
