IAsyncInfo Interface
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Dá suporte a ações e operações assíncronas. IAsyncInfo é uma interface base para IAsyncAction, IAsyncActionWithProgress<TProgress>, IAsyncOperation<TResult> e IAsyncOperationWithProgress<TResult,TProgress>, cada uma das quais dá suporte a combinações de tipo de retorno e progresso para um método assíncrono.
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 do Windows
Família de dispositivos |
Windows 10 (introduzida na 10.0.10240.0)
|
API contract |
Windows.Foundation.FoundationContract (introduzida na v1.0)
|
Comentários
IAsyncInfo é uma interface herdada para cada uma das quatro interfaces Windows Runtime usadas para suporte a métodos assíncronos. Eles são:
- IAsyncAction
- IAsyncActionWithProgress<TProgress>
- IAsyncOperation<TResult>
- IAsyncOperationWithProgress<TResult,TProgress>
Quando você usa métodos assíncronos no código do aplicativo, geralmente não vê nenhuma dessas interfaces como o valor retornado. Isso ocorre porque você quase sempre usa a sintaxe awaitable específica do idioma, que manipula as interfaces internamente. Para obter mais informações, consulte Programação assíncrona ou um dos guias específicos da linguagem para Windows Runtime programação assíncrona (chamar APIs assíncronas em C# ou Visual Basic, C++, JavaScript).
Para a maioria dos códigos do aplicativo, é incomum usar IAsyncInfo como uma API, mesmo que você não use uma sintaxe aguardável. Cada um dos idiomas tem pontos de extensão que geralmente são mais fáceis de usar do que a interface Windows RuntimeIAsyncInfo. O JavaScript tem a sintaxe then/done . O .NET tem o método de extensão AsTask e, depois que o IAsyncAction é convertido em uma Tarefa, é mais fácil cancelar, receber notificação após a conclusão e assim por diante. Para C++/CX, você pode encapsular as chamadas usando o runtime de simultaneidade. Em outras palavras, IAsyncInfo é uma infraestrutura de nível de runtime, que cada uma das linguagens usa como uma estrutura para dar suporte à sintaxe aguardável à sua maneira.
Se você estiver implementando uma ação personalizada ou uma operação personalizada (um cenário avançado), não implemente IAsyncAction diretamente. Implemente uma das 4 interfaces listadas anteriormente.
Propriedades
ErrorCode |
Obtém uma cadeia de caracteres que descreve uma condição de erro da operação assíncrona. |
Id |
Obtém o identificador da operação assíncrona. |
Status |
Obtém um valor que indica o status da operação assíncrona. |
Métodos
Cancel() |
Cancela a operação assíncrona. |
Close() |
Fecha a operação assíncrona. |
Aplica-se a
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários