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

# ID3D12CommandQueue::Signal

> ID3D12CommandQueue::Signal (Direct3D 12 en XBOX): actualiza una barrera a un valor especificado. Referencia de la API de gráficos Direct3D 12 para el desarrollo de juegos de XBOX.

Actualiza una barrera a un valor especificado.

## Sintaxis

```cpp theme={null}
HRESULT Signal(
    ID3D12Fence  pFence,
    UINT64 Value
)
```

### Parámetros

*pFence*\
Tipo: ID3D12Fence \*

Un puntero al objeto [ID3D12Fence](/reference/graphics/d3d12/interfaces/id3d12fence/id3d12fence_public).

*Value*\
Tipo: UINT64

El valor en el que se va a establecer la barrera.

### Valor devuelto

Tipo: HRESULT

Este método devuelve uno de los [códigos de retorno de Direct3D 12](https://learn.microsoft.com/en-us/windows/win32/direct3d12/d3d12-graphics-reference-returnvalues).

## Comentarios

Use este método para establecer un valor de barrera desde el lado de la GPU. Use [ID3D12Fence::Signal](/reference/graphics/d3d12/interfaces/id3d12fence/methods/id3d12fence_signal_public) para establecer una barrera desde el lado de la CPU.

#### Ejemplos

Agrega una señal a la cola de comandos, luego espera a que el sombreador de proceso complete la simulación y, por último, señala e incrementa el valor de la barrera.

```cpp theme={null}
// Wait for the compute shader to complete the simulation.
UINT64 threadFenceValue = InterlockedIncrement(&m_threadFenceValues[threadIndex]);
ThrowIfFailed(pCommandQueue->Signal(pFence, threadFenceValue));
ThrowIfFailed(pFence->SetEventOnCompletion(threadFenceValue, m_threadFenceEvents[threadIndex]));
WaitForSingleObject(m_threadFenceEvents[threadIndex], INFINITE);

```

```cpp theme={null}
// Add a signal command to the queue.
ThrowIfFailed(m_commandQueue->Signal(m_renderContextFence.Get(), m_renderContextFenceValue));

```

```cpp theme={null}
// Signal and increment the fence value.
ThrowIfFailed(m_commandQueue->Signal(m_renderContextFence.Get(), m_renderContextFenceValue));
m_renderContextFenceValue++;

```

Consulte el [código de ejemplo en la referencia de D3D12](https://learn.microsoft.com/en-us/windows/win32/direct3d12/notes-on-example-code).

<div class="code" />

## Requisitos

**Encabezado:** d3d12\_xs.h o d3d12\_x.h\
**Biblioteca:** d3d12\_xs.lib o d3d12\_x.lib\
**Plataformas compatibles**: consolas XBOX Series y familia XBOX One

## Consulte también

[ID3D12CommandQueue](/reference/graphics/d3d12_xs/interfaces/ID3D12CommandQueue/id3d12commandqueue_xs)

[Sincronización de varios motores](https://learn.microsoft.com/en-us/windows/win32/direct3d12/user-mode-heap-synchronization)


## Related topics

- [ID3D12Fence::Signal](/es/reference/graphics/d3d12/interfaces/id3d12fence/methods/id3d12fence_signal_public.md)
- [ID3D12CommandQueue::GetDesc](/es/reference/graphics/d3d12/interfaces/id3d12commandqueue/methods/id3d12commandqueue_getdesc_public.md)
- [D3D12_COMMAND_QUEUE_DESC](/es/reference/graphics/d3d12/structs/d3d12_command_queue_desc_public.md)
- [D3D12_COMMAND_QUEUE_PRIORITY](/es/reference/graphics/d3d12/enums/d3d12_command_queue_priority_public.md)
- [D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY](/es/reference/graphics/d3d12/structs/d3d12_feature_data_command_queue_priority_public.md)
