XAsyncBegin
Initialise un XAsyncBlock et commence le travail asynchrone d’un fournisseur asynchrone.Syntaxe
Paramètres
asyncBlock _Inout_Type : XAsyncBlock* Pointeur vers le XAsyncBlock qui contient les données de l’appel asynchrone. context _In_opt_
Type : void* Facultatif. Pointeur de contexte à stocker dans l’objet XAsyncProviderData passé à la fonction de rappel XAsyncProvider. identity _In_opt_
Type : void* Facultatif. Pointeur vers un jeton arbitraire qui peut servir à identifier l’appel asynchrone. identityName _In_opt_
Type : char* Facultatif. Chaîne qui nomme la fonction fournissant l’appel asynchrone. La valeur de ce paramètre est généralement définie sur la macro de compilateur
__FUNCTION__.
provider _In_Type : XAsyncProvider* Pointeur vers la fonction de rappel XAsyncProvider à appeler pour l’appel asynchrone.
Valeur de retour
Type : HRESULT RetourneS_OK en cas de réussite; sinon, retourne un code d’erreur. Pour obtenir la liste des codes d’erreur, consultez Codes d’erreur.
Remarques
XAsyncBegin est appelé pour indiquer que le fournisseur asynchrone doit commencer le travail asynchrone. Après l’appel de XAsyncBegin, les autres fonctions XAsyncProvider, comme XAsyncGetResult, fourniront des données pertinentes.
Lorsque XAsyncBegin est appelé, la fonction de rappel spécifiée dans provider est appelée, en spécifiant XAsyncOp::Begin dans le paramètre op de XAsyncProvider. Si la fonction de rappel implémente ce code d’opération, elle doit démarrer son travail asynchrone soit en appelant XAsyncSchedule, soit par des moyens externes. Une fois que XAsyncBegin a retourné, on suppose que la fonction de rappel a démarré le travail asynchrone sur un thread défini par le système.
La fonction de rappel spécifiée dans provider est traitée de manière synchrone dans la chaîne d’appels de
XAsyncBegin. Le travail asynchrone effectué par la fonction de rappel ne doit pas bloquer le thread.XAsyncOp::Begin et XAsyncOp::GetResult non concordants à la fonction de rappel. En général, la valeur de identity est définie sur le pointeur de la fonction qui a appelé XAsyncBegin, et la valeur de identityName est définie sur la macro de compilateur __FUNCTION__.
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 SeriesDocumentation conceptuelle
- Configurer un fournisseur personnalisé
- Vue d’ensemble de la bibliothèque XAsyncProvider
- Modèle de programmation asynchrone
Voir aussi
Membres XAsyncProviderXAsyncProviderData
XAsyncProvider
XAsyncGetResult
Modèle de programmation asynchrone
