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

# XAsyncCompletionRoutine

> XAsyncCompletionRoutine

# XAsyncCompletionRoutine

Représente le rappel d'achèvement d'un appel asynchrone.

## Syntaxe

```cpp theme={null}
void XAsyncCompletionRoutine(  
         XAsyncBlock* asyncBlock  
)  
```

### Paramètres

*asyncBlock*   \_Inout\_\
Type : [XAsyncBlock\*](/fr/reference/system/xasync/structs/xasyncblock)

Pointeur vers la structure [XAsyncBlock](/fr/reference/system/xasync/structs/xasyncblock) du rappel d'achèvement.

### Valeur de retour

Type : void

## Remarques

Vous pouvez éventuellement spécifier un pointeur `XAsyncCompletionRoutine` pour fournir un *rappel d'achèvement* à un appel asynchrone. Un rappel d'achèvement est une fonction de rappel qui s'exécute après l'achèvement d'un appel asynchrone. Vous pouvez spécifier un pointeur `XAsyncCompletionRoutine` dans le membre `callback` d'une structure [XAsyncBlock](/fr/reference/system/xasync/structs/xasyncblock) pour un appel asynchrone.

En général, un rappel d'achèvement traite les résultats d'un appel asynchrone sur un autre thread. Le rappel d'achèvement représente une fonction de rappel invoquée lorsque l'appel asynchrone se termine. La fonction de rappel prend un pointeur `XAsyncBlock`, qui est ensuite utilisé pour obtenir les résultats de la fonction de rappel.

Si vous spécifiez un rappel d'achèvement, vous pouvez vérifier périodiquement si le rappel d'achèvement est terminé à l'aide de la fonction [XAsyncGetStatus](/fr/reference/system/xasync/functions/xasyncgetstatus), puis utiliser [XAsyncGetResult](/fr/reference/system/xasyncprovider/functions/xasyncgetresult) et [XAsyncGetResultSize](/fr/reference/system/xasync/functions/xasyncgetresultsize) selon les besoins pour obtenir les résultats de la tâche terminée.

Un rappel d'achèvement est invoqué même si [XAsyncCancel](/fr/reference/system/xasync/functions/xasynccancel) est invoqué pour annuler l'appel asynchrone.

Utilisez [XAsyncGetStatus](/fr/reference/system/xasync/functions/xasyncgetstatus) ou la méthode `Get\*Result` du rappel d'achèvement pour obtenir les résultats de l'appel asynchrone. Si l'appel asynchrone a été annulé, ces méthodes renvoient `E_ABORT`. Pour plus d'informations sur le modèle d'implémentation d'un fournisseur asynchrone, notamment la méthode `Get\*Result`, consultez [Modèle de programmation asynchrone](/fr/build/core-features/common/async/async-programming-model).

## Configuration requise

**En-tête :** XAsync.h

**Bibliothèque :** xgameruntime.lib

**Plateformes prises en charge :** Windows, consoles de la famille XBOX One et consoles XBOX Series

## Documentation conceptuelle

* [Modèle de programmation asynchrone](/fr/build/core-features/common/async/async-programming-model)

## Voir aussi

[Membres XAsync](/fr/reference/system/xasync/xasync_members)\
[XAsyncGetStatus](/fr/reference/system/xasync/functions/xasyncgetstatus)\
[Modèle de programmation asynchrone](/fr/build/core-features/common/async/async-programming-model)


## Related topics

- [XAsyncCompletionRoutine](/reference/system/xasync/functions/xasynccompletionroutine.md)
- [XAsyncCancel](/reference/system/xasync/functions/xasynccancel.md)
