Класс Control.Async (F#)
Содержит члены для создания асинхронных вычислений и управления ими. Control.Async является статическим классом.
Пространство имен/путь к модулю: Microsoft.FSharp.Control
Сборка: FSharp.Core (в 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
Заметки
В скомпилированных сборках имя этого типа — FSharpAsync. При обращении к данному типу из языка, отличного от F#, или посредством отражения следует использовать это имя.
Общие сведения об асинхронных рабочих процессах см. в разделе Асинхронные рабочие потоки (F#).
Статические члены
Элемент |
Описание |
---|---|
Создает три функции, которые можно использовать для реализации асинхронной модели программирования (APM) платформы .NET Framework для заданного асинхронного вычисления. |
|
Создает асинхронное вычисление, которое ожидает однократного вызова события платформы .NET Framework, добавляя в это событие обработчик. Если вычисление завершено или отменено, обработчик удаляется из события. |
|
Создает асинхронное вычисление, которое ожидает предоставляемый результат IAsyncResult. |
|
Возвращает асинхронное вычисление, которое ожидает выполнения указанной задачи и возвращает ее результат. |
|
Создает асинхронное вычисление, которое ожидает предоставляемый результат WaitHandle. |
|
Создает условие отмены последнего набора начатых асинхронных вычислений без какого-либо конкретного токена CancellationToken. Заменяет глобальный источник CancellationTokenSource на новый глобальный источник токенов для любых асинхронных вычислений, созданных после этого момента без какого-либо конкретного токена CancellationToken. |
|
Создает асинхронное вычисление, которое возвращает объект CancellationToken, управляющий выполнением вычисления. |
|
Создает асинхронное вычисление. При успешном завершении вычисления этот метод возвращает объект Choice1Of2 с возвращенным значением. Если вычисление создает исключение до своего завершения, этот метод возвращает объект Choice2Of2 с созданным исключением. |
|
Получает токен отмены по умолчанию для выполнения асинхронных вычислений. |
|
Создает асинхронные вычисления, задавая начальную и конечную функцию, например API платформы .NET Framework. |
|
Создает асинхронные вычисления, задавая начальную и конечную функцию, например API платформы .NET Framework. Эту перегрузку следует использовать, если операция определяется одним аргументом. |
|
Создает асинхронные вычисления, задавая начальную и конечную функцию, например API платформы .NET Framework. Эту перегрузку следует использовать, если операция определяется двумя аргументами. |
|
Создает асинхронные вычисления, задавая начальную и конечную функцию, например API платформы .NET Framework. Эту перегрузку следует использовать, если операция определяется тремя аргументами. |
|
Создает асинхронное вычисление, которое включает текущие продолжения состояний успеха, исключения и отмены. Функция обратного вызова должна в конечном итоге вызывать только одно из заданных продолжений. |
|
Создает асинхронное вычисление, которое запускает заданное вычисление и игнорирует его результат. |
|
Создает ограниченный согласованный обработчик отмены для использования в асинхронном рабочем процессе. |
|
Создает асинхронное вычисление, которое выполняет все заданные асинхронные вычисления, первоначально ставя каждое из них в очередь в качестве рабочего элемента и используя шаблон разветвлений и соединений. |
|
Запускает асинхронное вычисление и ожидает его результата. |
|
Создает асинхронное вычисление, которое приостанавливается на указанное время. Объект Timer, используемый для планирования задержки. Данная операция не блокирует потоки операционной системы на период задержки. |
|
Начинает асинхронное вычисление в пуле потоков. Не дожидается результата этого вычисления. |
|
Выполняет вычисление в пуле потоков. Возвращает задачу Task, которая будет завершена в соответствующем состоянии после вычисления (после вывода результата, возникновения исключения или отмены). Если токен отмены не предоставлен, то используется токен отмены по умолчанию. |
|
Начинает дочернее вычисление в асинхронном рабочем процессе. Это позволяет одновременно выполнять несколько асинхронных вычислений. |
|
Создает асинхронное вычисление, которое запускает указанное вычисление в качестве задачи Task. |
|
Немедленно запускает асинхронное вычисление в текущем потоке операционной системы. |
|
Немедленно запускает асинхронное вычисление в текущем потоке операционной системы. Этот метод вызывает одно из трех продолжений по завершении операции. |
|
Создает асинхронное вычисление, которое запускает свое продолжение, используя метод Post() предоставленного контекста синхронизации. Если предоставляемый контекст синхронизации имеет значение null, асинхронное вычисление эквивалентно SwitchToThreadPool. |
|
Создает асинхронное вычисление, которое создает новый поток и запускает свое продолжение в этом потоке. |
|
Создает асинхронное вычисление, которое ставит в очередь рабочий элемент, запускающий его продолжение. |
|
Создает асинхронное вычисление, которое выполняет предоставленное вычисление. Если вычисление отменяется до своего завершения, выполняется вычисление, создаваемое с помощью предоставленной функции компенсации. |
Платформы
Windows 7, Windows Vista с пакетом обновления 2 (SP2), Windows XP с пакетом обновления 3 (SP3), Windows XP x64 с пакетом обновления 2 (SP2), Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2), Windows Server 2003 с пакетом обновления 2 (SP2)
Сведения о версии
Среда выполнения F#
Поддерживается в версиях 2.0, 4.0
Silverlight
Поддерживается в версии 3
См. также
Ссылки
Пространство имен Microsoft.FSharp.Control (F#)