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

# Como: enviar retornos de chamada

> Como: enviar retornos de chamada

## Exemplo

O exemplo a seguir mostra como enviar um retorno de chamada para a porta de trabalho
ou para a porta de conclusão de uma fila de tarefas. Primeiro, ele envia um retorno de chamada de trabalho. Em seguida, ao final do retorno de chamada de trabalho, ele envia um retorno de chamada de conclusão. Esse é o uso típico. A função `SubmitCallbacks` é
usada nos cenários seguintes por questão de brevidade.

```c++ theme={null}
void CALLBACK SampleCompletionCallback(void*, bool cancel)
{
    printf("Completion invoked on thread %d. Cancel? %d.\r\n",
    GetCurrentThreadId(), cancel);
}

void CALLBACK SampleWorkCallback(void* context, bool cancel)
{
    printf("Worker invoked on thread %d. Cancel? %d.\r\n",
    GetCurrentThreadId(), cancel);

    XTaskQueueHandle queueFromContext = static_cast<XTaskQueueHandle>(context);

    HRESULT hrCompletion = XTaskQueueSubmitCallback(
        queueFromContext,
        XTaskQueuePort::Completion,
        nullptr,
        SampleCompletionCallback);

    if (FAILED(hrCompletion))
    {
        printf("Error 0x%x submitting completion.\r\n", hrCompletion);
    }
}

void SubmitCallbacks(XTaskQueueHandle queue)
{
    HRESULT hrWork = XTaskQueueSubmitCallback(
        queue,
        XTaskQueuePort::Work,
        queue,
        SampleWorkCallback);

    if (FAILED(hrWork))
    {
        printf("Error 0x%x submitting work.\r\n", hrWork);
    }
}
```

## Consulte também

[Projetando a fila de tarefas](/pt-BR/build/core-features/common/async/async-task-queue-design)


## Related topics

- [PFLeaderboardsListLeaderboardDefinitionsGetResult](/pt-BR/services/playfab/api-references/c/pfleaderboards/functions/pfleaderboardslistleaderboarddefinitionsgetresult.md)
- [PFLeaderboardsListLeaderboardDefinitionsGetResultSize](/pt-BR/services/playfab/api-references/c/pfleaderboards/functions/pfleaderboardslistleaderboarddefinitionsgetresultsize.md)
- [PFLocalizationGetLanguageListGetResultSize](/pt-BR/services/playfab/api-references/c/pflocalization/functions/pflocalizationgetlanguagelistgetresultsize.md)
- [PFLocalizationGetLanguageListGetResult](/pt-BR/services/playfab/api-references/c/pflocalization/functions/pflocalizationgetlanguagelistgetresult.md)
- [PFStatisticsGetStatisticDefinitionGetResult](/pt-BR/services/playfab/api-references/c/pfstatistics/functions/pfstatisticsgetstatisticdefinitiongetresult.md)
