Share via


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#)를 참조하십시오.

정적 멤버

멤버

설명

AsBeginEnd

제공된 비동기 계산에 대해 .NET Framework APM(비동기 프로그래밍 모델)을 구현하는 데 사용할 수 있는 세 개의 함수를 만듭니다.

AwaitEvent

a .NET Framework 이벤트에 처리기를 추가하여 해당 이벤트가 한 번 호출될 때까지 기다리는 비동기 계산을 만듭니다. 계산이 완료되거나 취소되면 처리기는 이벤트에서 제거됩니다.

AwaitIAsyncResult

제공된 IAsyncResult 동안 대기 상태로 둘 비동기 계산을 만듭니다.

AwaitTask

지정된 작업이 완료되고 결과를 반환할 때까지 기다리는 비동기 계산을 반환합니다.

AwaitWaitHandle

제공된 WaitHandle 동안 대기 상태로 둘 비동기 계산을 만듭니다.

CancelDefaultToken

특정 CancellationToken 없이 시작되는 비동기 계산의 가장 최근 집합에 대한 취소 조건을 발생시킵니다. 어떠한 특정한 CancellationToken 없이 생성된 모든 비동기 계산에 대해 전역 CancellationTokenSource를 새로운 전역 토큰 소스와 바꿉니다.

CancellationToken

계산의 실행을 관리하는 CancellationToken을 반환하는 비동기 계산을 만듭니다.

Catch

비동기 계산을 만듭니다. 이 계산이 성공적으로 완료될 경우 이 메서드는 반환된 값과 함께 Choice1Of2를 반환합니다. 이 계산이 완료되기 전에 예외가 발생하는 경우 이 메서드는 발생한 예외와 함께 Choice2Of2를 반환합니다.

DefaultCancellationToken

비동기 계산을 실행하기 위한 기본 취소 토큰을 가져옵니다.

FromBeginEnd<'T>

.NET Framework API와 같은 시작 및 종료 함수를 지정하여 비동기 계산을 생성합니다.

FromBeginEnd<'Arg1,'T>

.NET Framework API와 같은 시작 및 종료 함수를 지정하여 비동기 계산을 생성합니다. 이 오버로드는 연산이 하나의 인수로 한정된 경우에 사용해야 합니다.

FromBeginEnd<'Arg1,'Arg2,'T>

.NET Framework API와 같은 시작 및 종료 함수를 지정하여 비동기 계산을 생성합니다. 작업을 두 인수로 정규화하는 경우 이 오버로드를 사용해야 합니다.

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

.NET Framework API와 같은 시작 및 종료 함수를 지정하여 비동기 계산을 생성합니다. 작업을 세 인수로 정규화하는 경우 이 오버로드를 사용해야 합니다.

FromContinuations

현재 성공, 예외 및 취소 연속을 포함하는 비동기 계산을 만듭니다. 콜백 함수는 최종적으로 지정된 연속 중 하나를 정확히 호출해야 합니다.

Ignore

지정된 계산을 실행하고 그 결과를 무시하는 비동기 계산을 만듭니다.

OnCancel

비동기 워크플로 내에서 사용할 수 있도록 범위가 지정된 협조적 취소 처리기를 생성합니다.

Parallel

제공된 모든 비동기 계산을 실행하는 비동기 계산을 만듭니다. 이때 처음에는 각 계산을 작업 항목으로 큐에 대기시키고 분기/조인 패턴을 사용합니다.

RunSynchronously

비동기 계산을 실행하고 그 결과를 기다립니다.

중지

지정된 시간 동안 일시 중지된 비동기 계산을 만듭니다. 지연 일정을 예상하는 데 사용되는 Timer 개체입니다. 이 연산은 대기 시간 동안 운영 체제 스레드를 차단하지 않습니다.

시작

스레드 풀에서 비동기 계산을 시작합니다. 그 결과를 대기하지 않습니다.

StartAsTask

스레드 풀에서 계산을 실행합니다. 취소 토큰이 제공되지 않아 기본 취소 토큰이 사용될 경우 계산이 종료되면(즉, 결과를 생성하거나, 예외를 throw하거나, 계산이 취소되면) 해당 상태에서 완료될 Task를 반환합니다.

StartChild

비동기 워크플로 내에서 자식 계산을 시작합니다. 이렇게 하면 여러 비동기 계산을 동시에 실행할 수 있습니다.

StartChildAsTask

지정된 계산을 Task로 시작하는 비동기 계산을 만듭니다.

StartImmediate

현재 운영 체제 스레드에서 즉시 시작되는 비동기 계산을 실행합니다.

StartWithContinuations

현재 운영 체제 스레드에서 즉시 시작되는 비동기 계산을 실행합니다. 이 메서드는 연산이 완료될 때 세 개의 연속 중 하나를 호출합니다.

SwitchToContext

제공된 동기화 컨텍스트의 Post() 메서드를 사용하여 계산을 실행하는 비동기 계산을 만듭니다. 제공된 동기화 컨텍스트가 null인 경우 비동기 계산은 SwitchToThreadPool과 같습니다.

SwitchToNewThread

새 스레드를 만들고 이 스레드에서 해당 연속을 실행하는 비동기 계산을 만듭니다.

SwitchToThreadPool

해당 연속을 실행하는 작업 항목을 큐에 대기시키는 비동기 계산을 만듭니다.

TryCancelled

제공된 계산을 실행하는 비동기 계산을 만듭니다. 이 계산을 완료하기 전에 취소하면 제공된 보정 함수를 실행하여 생성된 계산이 실행됩니다.

플랫폼

Windows 7, Windows Vista SP2, Windows XP SP3, Windows XP x64 SP2, Windows Server 2008 R2, Windows Server 2008 SP2, Windows Server 2003 SP2

버전 정보

F# 런타임

지원되는 버전: 2.0, 4.0

Silverlight

지원되는 버전: 3

참고 항목

참조

Microsoft.FSharp.Control 네임스페이스(F#)

비동기 워크플로(F#)

Control.Async<'T> 형식(F#)