Compartilhar via


Classe Control.Async (F#)

Contém membros para criar e manipular cálculos assíncronas. Control.Async é uma classe estática.

Caminho do namespace/módulo: Microsoft.FSharp.Control

Assembly: FSharp.Core (em FSharp.Core.dll)

[<Sealed>]
type Async =
 class
  static member AsBeginEnd : ('Arg -> Async<'T>) -> ('Arg * AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * (IAsyncResult -> unit)
  static member AwaitEvent : IEvent<'Del,'T> * ?(unit -> unit) -> Async<'T>
  static member AwaitIAsyncResult : IAsyncResult * ?int -> Async<bool>
  static member AwaitTask : Task<'T> -> Async<'T>
  static member AwaitWaitHandle : WaitHandle * ?int -> Async<bool>
  static member CancelDefaultToken : unit -> unit
  static member Catch : Async<'T> -> Async<Choice<'T,exn>>
  static member FromBeginEnd : 'Arg1 * 'Arg2 * 'Arg3 * ('Arg1 * 'Arg2 * 'Arg3 * AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * ?(unit -> unit) -> Async<'T>
  static member FromBeginEnd : 'Arg1 * 'Arg2 * ('Arg1 * 'Arg2 * AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * ?(unit -> unit) -> Async<'T>
  static member FromBeginEnd : 'Arg1 * ('Arg1 * AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * ?(unit -> unit) -> Async<'T>
  static member FromBeginEnd : (AsyncCallback * obj -> IAsyncResult) * (IAsyncResult -> 'T) * ?(unit -> unit) -> Async<'T>
  static member FromContinuations : (('T -> unit) * (exn -> unit) * (OperationCanceledException -> unit) -> unit) -> Async<'T>
  static member Ignore : Async<'T> -> Async<unit>
  static member OnCancel : (unit -> unit) -> Async<IDisposable>
  static member Parallel : seq<Async<'T>> -> Async<'T []>
  static member RunSynchronously : Async<'T> * ?int * ?CancellationToken -> 'T
  static member Sleep : int -> Async<unit>
  static member Start : Async<unit> * ?CancellationToken -> unit
  static member StartAsTask : Async<'T> * ?TaskCreationOptions * ?CancellationToken -> Task<'T>
  static member StartChild : Async<'T> * ?int -> Async<Async<'T>>
  static member StartChildAsTask : Async<'T> * ?TaskCreationOptions -> Async<Task<'T>>
  static member StartImmediate : Async<unit> * ?CancellationToken -> unit
  static member StartWithContinuations : Async<'T> * ('T -> unit) * (exn -> unit) * (OperationCanceledException -> unit) * ?CancellationToken -> unit
  static member SwitchToContext : SynchronizationContext -> Async<unit>
  static member SwitchToNewThread : unit -> Async<unit>
  static member SwitchToThreadPool : unit -> Async<unit>
  static member TryCancelled : Async<'T> * (OperationCanceledException -> unit) -> Async<'T>
  static member CancellationToken :  Async<CancellationToken>
  static member DefaultCancellationToken :  CancellationToken
 end

Comentários

Esse tipo é chamado de FSharpAsync em assemblies compilados. Se você estiver acessando o tipo a partir de uma linguagem diferente de F#, ou com a reflexão, use esse nome.

Para obter uma visão geral dos fluxos de trabalho assíncronos, consulte Fluxos de trabalho assíncronos (F#).

Membros Estáticos

Membro

Descrição

AsBeginEnd

Cria três funções que podem ser usadas para implementar o modelo assíncrono (APM) de programação do .NET Framework para a computação assíncrona fornecida.

AwaitEvent

Cria uma computação assíncrona que espera uma única chamada de um evento do .NET Framework adicionando um manipulador ao evento. Quando a computação é concluída ou é cancelada, o manipulador é removido do evento.

AwaitIAsyncResult

Cria uma computação assíncrona que espera pelo IAsyncResult fornecido.

AwaitTask

Retorna uma computação assíncrona que aguarda que a tarefa determinada seja concluída e retorne o seu resultado.

AwaitWaitHandle

Cria uma computação assíncrona que espera pelo WaitHandle fornecido.

CancelDefaultToken

Gera a condição de cancelamento para o conjunto mais recente de cálculos assíncronos iniciados sem nenhum CancellationToken específico. Substitui a CancellationTokenSource global por uma nova origem de token global para todos os cálculos assíncronos criados sem nenhum CancellationTokenespecífico.

CancellationToken

Cria uma computação assíncrono que retorna CancellationToken que gerencia a execução da computação.

Catch

Cria uma computação assíncrona. Se esta computação for concluída com sucesso, esse método retornará Choice1Of2 com o valor retornado. Se esta computação gerar uma exceção antes de ser concluída, esse método retornará Choice2Of2 com a exceção gerada.

DefaultCancellationToken

Obtém o token padrão de cancelamento para executar cálculos assíncronos.

FromBeginEnd<'T>

Cria um cálculo assíncrono especificando uma função de início e fim, como as APIs do .NET Framework.

FromBeginEnd<'Arg1,'T>

Cria um cálculo assíncrono especificando uma função de início e fim, como as APIs do .NET Framework. Essa sobrecarga deverá ser usada se a operação for qualificada por um argumento.

FromBeginEnd<'Arg1,'Arg2,'T>

Cria um cálculo assíncrono especificando uma função de início e fim, como as APIs do .NET Framework. Essa sobrecarga deverá ser usada se a operação for qualificada por dois argumentos.

FromBeginEnd<'Arg1,'Arg2,'Arg3,'T>

Cria um cálculo assíncrono especificando uma função de início e fim, como as APIs do .NET Framework. Essa sobrecarga deverá ser usada se a operação for qualificada por três argumentos.

FromContinuations

Cria uma computação assíncrona que inclui as continuações atuais bem-sucedidas, de cancelamento e de exceção. A função de retorno de chamada deve chamar, eventualmente, exatamente uma das continuações especificadas.

Ignorar

Cria uma computação assíncrona que executa a computação determinada e ignora o resultado.

OnCancel

Gerencia um manipulador de cancelamento cooperativo e com escopo para o uso dentro de um fluxo de trabalho assíncrono.

Paralelo

Cria uma computação assíncrona que executa todas as computações assíncronas fornecidas, enfileirando inicialmente cada uma como um item de trabalho e usando um padrão de bifurcação/associação.

RunSynchronously

Executa uma computação assíncrona e aguarda o resultado.

Suspensão

Cria uma computação assíncrona que pausa nos momentos especificados. É usado um objeto Timer para agendar o atraso. A operação não bloqueia threads do sistema operacional enquanto durar o atraso.

Iniciar

Inicia um cálculo assíncrono no pool de threads. Não espera o resultado.

StartAsTask

Executa uma computação no pool de segmentos. Retorna uma Task que será concluída no estado correspondente quando a computação terminar (produz o resultado, gera exceção ou é cancelada). Se nenhum token de cancelamento for fornecido, o token de cancelamento padrão será usado.

StartChild

Inicia um cálculo filho em um fluxo de trabalho assíncrono. Isso permite que vários cálculos assíncronos sejam executados simultaneamente.

StartChildAsTask

Cria uma computação assíncrona que inicia a computação dada como Task.

StartImmediate

Executa uma computação assíncrona, iniciando imediatamente no thread atual do sistema operacional.

StartWithContinuations

Executa uma computação assíncrona, iniciando imediatamente no thread atual do sistema operacional. Esse método chama uma das três continuações quando a operação é concluída.

SwitchToContext

Cria uma computação assíncrona que executa sua continuação usando o método Post do contexto de sincronização fornecido. Se o contexto de sincronização fornecido for null, a computação assíncrona será equivalente a SwitchToThreadPool.

SwitchToNewThread

Cria uma computação assíncrona que cria um novo segmento e executa sua continuação naquele segmento.

SwitchToThreadPool

Cria uma computação assíncrona que enfileira um item de trabalho que executa sua continuação.

TryCancelled

Cria uma computação assíncrona que executa a computação fornecida. Se esta computação for cancelada antes de terminar, a computação gerada executando a função fornecida de compensação será executada.

Plataformas

Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Informações de versão

Versões da biblioteca principal F#

Suportado em: 2.0, 4.0, Portátil

Consulte também

Referência

Namespace Microsoft.FSharp.Control (F#)

Fluxos de trabalho assíncronos (F#)

Tipo Control.Async<'T> (F#)