Padrões de design de programação assíncrono

Operações assíncrono normalmente são usadas para executar tarefas que podem levar muito time para concluir, sistema autônomo abrir arquivos grandes, se conectem a computadores remoto ou consultando um banco de dados.Executa uma operação assíncrono em um thread separado do segmento do aplicativo principal.Quando um aplicativo chama métodos para executar uma operação assíncrona, o aplicativo pode continuar em execução enquanto o método assíncrono executa sua tarefa.

O .NET estrutura fornece dois padrões de design para operações assíncrono:

  • Operações assíncrono que usam IAsyncResult objetos.

  • Operações assíncrono que usam eventos.

The IAsyncResult padrão de design permite uma variedade de modelos de programação, mas é mais complexo para aprender e fornece uma flexibilidade que não exigem a maioria dos aplicativos. Sempre que possível, os designers de biblioteca de classes devem implementar métodos assíncrono usando o modelo orientado por evento.Em alguns casos o designer da biblioteca também deve implementar o IAsyncResult baseado em modelo.

Para obter documentação sobre as operações assíncrono que usam eventos, consulte padrão assíncrono baseado em evento Visão geral sobre.

Programação assíncrono é um recurso suportado por muitas áreas do .NET estrutura, incluindo:

  • Arquivo E/S, fluxo de I/O, E/S de soquete.

  • Rede.

  • Canais de comunicação remota (HTTP, TCP) e proxies.

  • Serviços Web XML criados usando ASP.NET.

  • Formulários da Web do ASP.NET.

  • O mensagem enfileirar usando o MessageQueue classe.

Nesta seção

Consulte também

Conceitos

E/S de Arquivo Assíncrono

Referência

AsyncCallback

IAsyncResult

Delegate

AsyncOperationManager

BackgroundWorker