> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XAsyncWork

> XAsyncWork

# XAsyncWork

Representa la función de devolución de llamada que invoca [XAsyncRun](https://docs.xbox.com/es/reference/system/xasync/functions/xasyncrun.md).

## Sintaxis

```cpp theme={null}
HRESULT XAsyncWork(  
         XAsyncBlock* asyncBlock  
)  
```

### Parámetros

*asyncBlock*   \_Inout\_\
Tipo: [XAsyncBlock\*](https://docs.xbox.com/es/reference/system/xasync/structs/xasyncblock.md)

Un puntero a una copia del [XAsyncBlock](https://docs.xbox.com/es/reference/system/xasync/structs/xasyncblock.md) que se pasó a [XAsyncRun](https://docs.xbox.com/es/reference/system/xasync/functions/xasyncrun.md).

### Valor devuelto

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

Devuelve `S_OK` si se realiza correctamente; de lo contrario, devuelve un código de error. Para ver una lista de códigos de error, consulte [Códigos de error](https://docs.xbox.com/es/reference/errorcodes.md).

## Comentarios

Se usa un puntero a una copia del [XAsyncBlock](https://docs.xbox.com/es/reference/system/xasync/structs/xasyncblock.md) que se pasó a [XAsyncRun](https://docs.xbox.com/es/reference/system/xasync/functions/xasyncrun.md) para permitir que el sistema garantice que el puntero siempre exista y sea válido para la devolución de llamada.

Al usar la función auxiliar [XAsyncRun](https://docs.xbox.com/es/reference/system/xasync/functions/xasyncrun.md) para ejecutar de forma asincrónica una función de devolución de llamada, se especifica un puntero `XAsyncWork` para la función de devolución de llamada que se invocará. A continuación, `XAsyncRun` usa la funcionalidad de [XAsyncProvider](https://docs.xbox.com/es/reference/system/xasyncprovider/xasyncprovider_members.md) para ejecutar la función de devolución de llamada.

Para obtener más información sobre la funcionalidad de `XAsyncProvider`, consulte [Modelo de programación asincrónica](https://docs.xbox.com/es/build/core-features/common/async/async-programming-model.md).

## Requisitos

**Encabezado:** XAsync.h

**Biblioteca:** xgameruntime.lib

**Plataformas compatibles:** Windows, consolas de la familia XBOX One y consolas XBOX Series

## Consulte también

[Miembros de XAsync](https://docs.xbox.com/es/reference/system/xasync/xasync_members.md)\
[XAsyncRun](https://docs.xbox.com/es/reference/system/xasync/functions/xasyncrun.md)\
[Modelo de programación asincrónica](https://docs.xbox.com/es/build/core-features/common/async/async-programming-model.md)


## Related topics

- [XAsyncRun](https://docs.xbox.com/es/reference/system/xasync/functions/xasyncrun.md)
- [XAsync (contenido de la API)](https://docs.xbox.com/es/reference/system/xasync/xasync_members.md)
- [XAsyncBlock](https://docs.xbox.com/es/reference/system/xasync/structs/xasyncblock.md)
- [PartyWorkMode](https://docs.xbox.com/es/services/playfab/multiplayer/networking/reference/enums/partyworkmode.md)
- [Ejemplo de configuración de los métodos de invocación](https://docs.xbox.com/es/build/core-features/common/async/async-libraries/async-library-xasyncprovider-example-setup-invocation-methods.md)
