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

# ReportGpuHaltX (consoles XBOX Series)

> Signale un arrêt pendant l'exécution du GPU.

Signale un arrêt pendant l'exécution du GPU. Un arrêt peut être dû à un blocage du GPU, à une exception de nuanceur ou au débogage en direct à la demande.

Un arrêt peut être fatal, p. ex. lorsque le GPU se bloque, ou il peut s'agir d'une simple pause, p. ex. dans les scénarios de débogage à la demande et d'exception de nuanceur. Le titre doit alors être arrêté ou peut continuer, selon le cas. Cette API permet aux développeurs de spécifier le type de débogage GPU qu'ils souhaitent effectuer et si le titre doit continuer ou s'arrêter après un arrêt.

## Syntaxe

```cpp theme={null}
void ReportGpuHaltX(  
         D3D12XBOX_REPORT_GPU_HALT_FLAGS Flags  
)  
```

### Paramètres

*Flags*   \_In\_\
Type : [D3D12XBOX\_REPORT\_GPU\_HALT\_FLAGS](/fr-CA/reference/graphics/d3d12_xs/enums/d3d12xbox_report_gpu_halt_flags)

Options utilisées pour signaler l'arrêt du GPU, sous forme de combinaison OR au niveau du bit de constantes de l'énumération **D3D12XBOX\_REPORT\_GPU\_HALT\_FLAGS**.

### Valeur de retour

Type : void

<a id="GpuFullStop" />

## Remarques

Le titre doit vérifier la pulsation du GPU et signaler un arrêt du GPU au pilote graphique. Voici un exemple de code qui montre comment procéder :

```cpp theme={null}
void GpuFullStop(ID3D12Device* device, ID3D12CommandQueue* commandQueue)
{
    Microsoft::WRL::ComPtr<ID3D12Fence> fence = nullptr;
    DX::ThrowIfFailed(device->CreateFence(0, D3D12_FENCE_FLAG_NONE, IID_GRAPHICS_PPV_ARGS(fence.ReleaseAndGetAddressOf())));

    commandQueue->Signal(fence.Get(), 1);

    auto originalTime = GetTickCount();
    while (0 == fence->GetCompletedValue())
    {
        auto currentTime = GetTickCount();
        auto waitTime = 5000U; // 5 seconds
        if (currentTime > originalTime + waitTime)
        {
            D3D12XBOX_REPORT_GPU_HALT_FLAGS flags = D3D12XBOX_REPORT_GPU_HALT_FLAG_NO_TERMINATION;

            if (m_terminateTitle)
            {
                flags = D3D12XBOX_REPORT_GPU_HALT_FLAG_ALL;
            }

            if (m_noDebugBreak)
            {
                flags |= D3D12XBOX_REPORT_GPU_HALT_FLAG_NO_BREAK;
            }

            if (!m_liveDebug)
            {
                flags |= D3D12XBOX_REPORT_GPU_HALT_FLAG_NO_LIVE_DEBUG;
            }

            if (!m_generateHixDump)
            {
                flags |= D3D12XBOX_REPORT_GPU_HALT_FLAG_NO_DUMP;
            }

            ID3D12Device11* device11 = nullptr;
            DX::ThrowIfFailed(device->QueryInterface(IID_GRAPHICS_PPV_ARGS(&device11)));

            device11->ReportGpuHaltX(flags);
        }
        else
        {
            auto sleepTime = 10U; // 10 ms
            Sleep(sleepTime);
        }
    }
}
```

## Configuration requise

**En-tête :** d3d12\_xs.h

**Bibliothèque :** d3d12\_xs.lib

**Plateformes prises en charge :** consoles XBOX Series

## Voir aussi

[ID3D12Device11](/fr-CA/reference/graphics/d3d12_xs/interfaces/ID3D12Device11/id3d12device11)

[EnableLiveDebuggingX](/fr-CA/reference/graphics/d3d12_xs/interfaces/ID3D12Device11/methods/id3d12device11_enablelivedebuggingx)

[SetHangCallbacksX](/fr-CA/reference/graphics/d3d12_x/interfaces/id3d12device/methods/id3d12device_sethangcallbacksx)

[Débogage en direct des nuanceurs pour l'enquête sur les blocages XBOX](https://learn.microsoft.com/en-us/gaming/gdk/_content/gc/tools-console/xbox-tools-and-apis/hix/live-debugging)

[Débogage en direct sur les exceptions de nuanceur dans PIX](https://learn.microsoft.com/en-us/gaming/gdk/_content/gc/tools-console/xbox-tools-and-apis/pix/pix-shader-exceptions-live-debugging)

[Débogage en direct à la demande dans PIX](https://learn.microsoft.com/en-us/gaming/gdk/_content/gc/tools-console/xbox-tools-and-apis/pix/pix-on-demand-live-debugging)


## Related topics

- [Répertoire des rubriques NDA : liens actifs vers Microsoft Learn](/fr-CA/nda/nda-topic-directory.md)
- [Captures PIX GPU Trace sur les consoles XBOX Series](/fr-CA/tools/tools-console/pix/gpu-trace/index.md)
- [RemoveDevice (consoles XBOX Series)](/fr-CA/reference/graphics/d3d12/interfaces/id3d12device5/methods/id3d12device5_removedevice_public.md)
- [CreateCommittedResource1 (consoles XBOX Series)](/fr-CA/reference/graphics/d3d12/interfaces/id3d12device4/methods/id3d12device4_createcommittedresource1_public.md)
- [D3D12_RAYTRACING_INSTANCE_DESC (consoles XBOX Series)](/fr-CA/reference/graphics/d3d12/structs/d3d12_raytracing_instance_desc_public.md)
