IAsyncInfo Interfaz
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Admite acciones y operaciones asincrónicas. IAsyncInfo es una interfaz base para IAsyncAction, IAsyncActionWithProgress TProgress<>, IAsyncOperation<TResult> e IAsyncOperationWithProgress<TResult,TProgress>, cada una de las cuales admite combinaciones de tipo de valor devuelto y progreso para un método asincrónico.
public interface class IAsyncInfo
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(54, 0, 0, 192, 0, 0, 0, 0, 0, 0, 70)]
struct IAsyncInfo
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
[Windows.Foundation.Metadata.Guid(54, 0, 0, 192, 0, 0, 0, 0, 0, 0, 70)]
public interface IAsyncInfo
Public Interface IAsyncInfo
- Derivado
- Atributos
Requisitos de Windows
Familia de dispositivos |
Windows 10 (se introdujo en la versión 10.0.10240.0)
|
API contract |
Windows.Foundation.FoundationContract (se introdujo en la versión v1.0)
|
Comentarios
IAsyncInfo es una interfaz heredada para cada una de las 4 interfaces de Windows Runtime que se usan para la compatibilidad con métodos asincrónicos. Son las siguientes:
- IAsyncAction
- IAsyncActionWithProgress<TProgress>
- IAsyncOperation<TResult>
- IAsyncOperationWithProgress<TResult,TProgress>
Cuando se usan métodos asincrónicos en el código de la aplicación, normalmente no se ve ninguna de estas interfaces como valor devuelto. Esto se debe a que casi siempre usa la sintaxis awaitable específica del lenguaje, que controla las interfaces internamente. Para obtener más información, vea Programación asincrónica o una de las guías específicas del lenguaje para Windows Runtime programación asincrónica (llamar a las API asincrónicas en C# o Visual Basic, C++, JavaScript).
Para la mayoría del código de la aplicación, es poco habitual usar IAsyncInfo como API, incluso si no se usa una sintaxis que se puede esperar. Cada uno de los lenguajes tiene puntos de extensión que generalmente son más fáciles de usar que es la interfaz Windows RuntimeIAsyncInfo. JavaScript tiene la sintaxis then/done . .NET tiene el método de extensión AsTask y, una vez que IAsyncAction se convierte en una tarea, es más fácil cancelar, obtener notificaciones al finalizar, etc. Para C++/CX, puede ajustar las llamadas mediante el runtime de simultaneidad. En otras palabras, IAsyncInfo es una infraestructura de nivel de tiempo de ejecución, que cada uno de los lenguajes usa como marco para admitir la sintaxis que se puede esperar de forma propia.
Si va a implementar una acción personalizada o una operación personalizada (un escenario avanzado), no implemente IAsyncAction directamente. Implemente una de las 4 interfaces enumeradas anteriormente en su lugar.
Propiedades
ErrorCode |
Obtiene una cadena que describe una condición de error de la operación asincrónica. |
Id |
Obtiene el identificador de la operación asincrónica. |
Status |
Obtiene un valor que indica el estado de la operación asincrónica. |
Métodos
Cancel() |
Cancela la operación asincrónica. |
Close() |
Cierra la operación asincrónica. |
Se aplica a
Consulte también
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de