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

# XTaskQueueSetCurrentProcessTaskQueue

> XTaskQueueSetCurrentProcessTaskQueue

# XTaskQueueSetCurrentProcessTaskQueue

Establece la cola de tareas especificada como la cola de tareas de todo el proceso.

## Sintaxis

```cpp theme={null}
void XTaskQueueSetCurrentProcessTaskQueue(  
         XTaskQueueHandle queue  
)  
```

### Parámetros

*queue*   \_In\_\
Tipo: XTaskQueueHandle

La cola que se configurará como cola de tareas predeterminada para el proceso.

### Valor devuelto

Tipo: void

## Comentarios

<Note>No es seguro llamar a esta función en un subproceso sensible al tiempo. Para obtener más información, consulte [Subprocesos sensibles al tiempo](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads).</Note>

La cola se puede establecer en nullptr, en cuyo caso [XTaskQueueGetCurrentProcessTaskQueue](/reference/system/xtaskqueue/functions/xtaskqueuegetcurrentprocesstaskqueue) también devolverá nullptr. El identificador de la cola proporcionada se duplicará y se cerrará el identificador de cualquier cola de tareas del proceso existente.

En el ejemplo siguiente se reemplaza la cola de tareas del proceso predeterminada. Esta cola de tareas usa el grupo de subprocesos para la distribución de trabajo y de finalización. Todas las API de Microsoft Game Development Kit (GDK) que aceptan parámetros de cola de tareas admiten **nullptr** y lo sustituyen por la cola de tareas del proceso. La cola de tareas del proceso también se puede establecer en **nullptr**, en cuyo caso las API de Microsoft Game Development Kit (GDK) que requieren un parámetro de cola de tareas producirán un error con E\_NO\_TASK\_QUEUE si se proporcionó un valor nulo. Esto permite que las API de Microsoft Game Development Kit (GDK) funcionen con valores predeterminados y, al mismo tiempo, permite un control estricto sobre los identificadores de colas de tareas si es necesario.

```cpp theme={null}
void UsingProcessTaskQueue()
{
    XTaskQueueHandle queue = nullptr;
    XTaskQueueGetCurrentProcessTaskQueue(&queue);

    auto callback = [](void*, bool)
    {
        printf("Work callback invoked.\r\n");
    };

    HRESULT hr = XTaskQueueSubmitCallback(
        queue, XTaskQueuePort::Work, 
        nullptr, callback);

    if (FAILED(hr))
    {
        printf("Failed to submit callback: %x\r\n", hr);
        return;
    }

    // You can replace the process task queue.
    hr = XTaskQueueCreate(
        XTaskQueueDispatchMode::Manual, 
        XTaskQueueDispatchMode::Manual, 
        &queue);

    if (FAILED(hr))
    {
        printf("Failed to create new task queue: %x\r\n", hr);
        return;
    }
}
```

## Requisitos

**Encabezado:** XTaskQueue.h

**Biblioteca:** xgameruntime.lib

**Plataformas compatibles:** Windows, consolas de la familia XBOX One y consolas XBOX Series

## Documentación conceptual

* [Información general de la biblioteca XTaskQueue](/build/core-features/common/async/async-libraries/async-library-xtaskqueue)
* [Objetivos de diseño y mejoras de la programación asincrónica](/build/core-features/common/async/async-whitepaper)
* [Subprocesos sensibles al tiempo](https://learn.microsoft.com/gaming/gdk/docs/gdk-dev/console-dev/overviews/threads/time-sensitive-threads)

## Consulte también

[Miembros de XTaskQueue](/reference/system/xtaskqueue/xtaskqueue_members)\
[Modelo de programación asincrónica](/build/core-features/common/async/async-programming-model)\
[Diseño de la cola de tareas asincrónicas](/build/core-features/common/async/async-task-queue-design)


## Related topics

- [XTaskQueueGetCurrentProcessTaskQueue](/es/reference/system/xtaskqueue/functions/xtaskqueuegetcurrentprocesstaskqueue.md)
- [XTaskQueue](/es/reference/system/xtaskqueue/xtaskqueue_members.md)
- [Cómo usar las API de servicios XBOX (XSAPI)](/es/services/xbox-services/fundamentals/xbox-services-api/live-gs-xbl-apis.md)
- [Información general de la biblioteca XTaskQueue](/es/build/core-features/common/async/async-libraries/async-library-xtaskqueue.md)
- [XTaskQueuePort](/es/reference/system/xtaskqueue/enums/xtaskqueueport.md)
