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

# XTaskQueueCallback

> XTaskQueueCallback

# XTaskQueueCallback

Um retorno de chamada invocado pela fila de tarefas.

## Sintaxe

```cpp theme={null}
void XTaskQueueCallback(  
         void* context,  
         bool canceled  
)  
```

### Parâmetros

*context*   \_In\_opt\_\
Tipo: void\*

Opcional. Um ponteiro de contexto passado ao chamar [XTaskQueueSubmitCallback](/pt-BR/reference/system/xtaskqueue/functions/xtaskqueuesubmitcallback).

*canceled*   \_In\_\
Tipo: bool

Se for true, o retorno de chamada está sendo cancelado porque a fila de tarefas está sendo encerrada.

### Valor retornado

Tipo: void

## Comentários

O retorno de chamada `XTaskQueueCallback` é implementado para executar trabalho em uma fila de tarefas. Os retornos de chamada podem ser enviados para a porta de trabalho ou para a porta de conclusão de uma fila de tarefas invocando [XTaskQueueSubmitCallback](/pt-BR/reference/system/xtaskqueue/functions/xtaskqueuesubmitcallback) ou [XTaskQueueSubmitDelayedCallback](/pt-BR/reference/system/xtaskqueue/functions/xtaskqueuesubmitdelayedcallback). A porta de trabalho e a porta de conclusão de uma fila de tarefas podem ter modos de expedição independentes, e os retornos de chamada `XTaskQueueCallback` podem ser enviados para qualquer uma das portas. Normalmente, um retorno de chamada enviado para uma porta de trabalho, por sua vez, envia um retorno de chamada correspondente para a porta de conclusão ao concluir seu trabalho.

A finalidade do parâmetro `canceled` é garantir que todos os recursos alocados por um retorno de chamada possam ser liberados corretamente se um retorno de chamada for cancelado. Se um retorno de chamada `XTaskQueueCallback` for chamado e `canceled` estiver definido como true, a fila de tarefas desse retorno de chamada foi encerrada pela chamada a [XTaskQueueTerminate](/pt-BR/reference/system/xtaskqueue/functions/xtaskqueueterminate) e o retorno de chamada foi cancelado. O retorno de chamada deve liberar todos os recursos alocados, incluindo a memória alocada em `context`, e não executar nenhum outro trabalho.

Para obter um exemplo, consulte [Enviando retornos de chamada](/pt-BR/build/core-features/common/async/async-task-queue-design-howto/submitting-callbacks).

## Requisitos

**Cabeçalho:** XTaskQueue.h

**Biblioteca:** xgameruntime.lib

**Plataformas com suporte:** Windows, consoles da família XBOX One e consoles XBOX Series

## Confira também

[Membros de XTaskQueue](/pt-BR/reference/system/xtaskqueue/xtaskqueue_members)\
[Modelo de programação assíncrona](/pt-BR/build/core-features/common/async/async-programming-model)\
[Projetando a fila de tarefas](/pt-BR/build/core-features/common/async/async-task-queue-design)


## Related topics

- [XTaskQueueCallback](/reference/system/xtaskqueue/functions/xtaskqueuecallback.md)
- [XTaskQueueSubmitCallback](/reference/system/xtaskqueue/functions/xtaskqueuesubmitcallback.md)
- [XTaskQueueSubmitDelayedCallback](/reference/system/xtaskqueue/functions/xtaskqueuesubmitdelayedcallback.md)
- [XTaskQueue](/reference/system/xtaskqueue/xtaskqueue_members.md)
- [Async task queue design](/build/core-features/common/async/async-task-queue-design.md)
