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

# XAsyncGetResult

> XAsyncGetResult

# XAsyncGetResult

Retourne les résultats d'un appel asynchrone provenant d'un fournisseur asynchrone.

## Syntaxe

```cpp theme={null}
HRESULT XAsyncGetResult(  
         XAsyncBlock* asyncBlock,  
         const void* identity,  
         size_t bufferSize,  
         void* buffer,  
         size_t* bufferUsed  
)  
```

### Paramètres

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

Pointeur vers le [XAsyncBlock](/fr/reference/system/xasync/structs/xasyncblock) qui a été passé à [XAsyncBegin](/fr/reference/system/xasyncprovider/functions/xasyncbegin) pour l'appel asynchrone.

*identity*   \_In\_opt\_\
Type : void\*

Facultatif. Pointeur vers un jeton arbitraire qui peut être utilisé pour identifier l'appel asynchrone. Si une valeur a été spécifiée pour le paramètre *identity* de l'appel [XAsyncBegin](/fr/reference/system/xasyncprovider/functions/xasyncbegin) correspondant, le même pointeur doit être spécifié ici.

*bufferSize*   \_In\_\
Type : size\_t

Taille, en octets, de la mémoire tampon de résultat spécifiée dans *buffer*.

*buffer*   \_Out\_writes\_bytes\_to\_opt\_(bufferSize, \*bufferUsed)\
Type : void\*

Pointeur vers la mémoire tampon de résultat.

*bufferUsed*   \_Out\_opt\_\
Type : size\_t\*

Facultatif. Pointeur qui contient le nombre d'octets écrits dans la mémoire tampon de résultat spécifiée dans *buffer*. Cette valeur correspond à la valeur du paramètre *requiredResultSize*, spécifiée par le fournisseur asynchrone lors de l'appel de [XAsyncComplete](/fr/reference/system/xasyncprovider/functions/xasynccomplete).

### Valeur de retour

Type : [HRESULT](https://learn.microsoft.com/openspecs/windows_protocols/ms-erref/0642cb2f-2075-4469-918c-4441e69c548a)

Retourne `S_OK` en cas de réussite ; sinon, retourne un code d'erreur. Pour obtenir la liste des codes d'erreur, consultez [Codes d'erreur](/fr/reference/errorcodes).

## Remarques

Si l'appel asynchrone possède une charge utile de données, appelez cette fonction pour retourner la charge utile de données. Vous n'avez pas besoin d'appeler cette fonction si l'appel asynchrone ne possède pas de charge utile de données. Si cette fonction est appelée pour un appel asynchrone qui ne possède pas de charge utile de données, la fonction retourne le code d'erreur `E_NOT_SUPPORTED`.

Si une valeur a été spécifiée pour le paramètre *identity* de la fonction [XAsyncBegin](/fr/reference/system/xasyncprovider/functions/xasyncbegin) pour cet appel asynchrone, cette même valeur doit également être fournie pour le paramètre *identity* de cette fonction. Sinon, une non-concordance d'appel se produit et la fonction retourne le code d'erreur `E_INVALIDARG`.

Une fois cette fonction terminée et les résultats retournés dans la mémoire tampon de résultat spécifiée dans *buffer*, le [XAsyncBlock](/fr/reference/system/xasync/structs/xasyncblock) spécifié dans *asyncBlock* est terminé et n'est plus associé à l'appel asynchrone.

## Configuration requise

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

**Bibliothèque :** xgameruntime.lib

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

## Documentation conceptuelle

* [Configurer un fournisseur personnalisé](/fr/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-custom-provider)
* [Configurer les données de retour](/fr/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-return-data)
* [Modèle de programmation asynchrone](/fr/build/core-features/common/async/async-programming-model)

## Voir aussi

[Membres XAsyncProvider](/fr/reference/system/xasyncprovider/xasyncprovider_members)\
[XAsyncBegin](/fr/reference/system/xasyncprovider/functions/xasyncbegin)\
[XAsyncComplete](/fr/reference/system/xasyncprovider/functions/xasynccomplete)\
[Modèle de programmation asynchrone](/fr/build/core-features/common/async/async-programming-model)


## Related topics

- [XAsyncGetResult](/reference/system/xasyncprovider/functions/xasyncgetresult.md)
- [XAsyncGetResultSize](/reference/system/xasync/functions/xasyncgetresultsize.md)
- [XAsyncGetStatus](/reference/system/xasync/functions/xasyncgetstatus.md)
- [XAsyncBegin](/reference/system/xasyncprovider/functions/xasyncbegin.md)
- [XAsync](/reference/system/xasync/xasync_members.md)
