다음을 통해 공유


create_async 함수

람다 또는 함수는 사용자가 제공한 개체에 따라 Windows 런타임에서 비동기 구문을 만듭니다.반환 형식에 create_async 중 하나입니다 IAsyncAction^, IAsyncActionWithProgress<TProgress>^, IAsyncOperation<TResult>^, 또는 IAsyncOperationWithProgress<TResult, TProgress>^ 메서드에 전달 되는 람다의 서명을 기반으로 합니다.

template<
   typename _Function
>
auto create_async(
   const _Function& _Func
) -> decltype(ref new details::_AsyncTaskGeneratorThunk<_Function>(_Func));

매개 변수

  • _Function

  • _Func
    람다 또는 함수를 Windows 런타임에서 비동기 구문을 만들 개체입니다.

반환 값

표현 하는 Iasyncaction에서 비동기 구문을 ^, IAsyncActionWithProgress <TProgress> ^, IAsyncOperation <TResult> ^, 또는 < TResult, TProgress >은 IAsyncOperationWithProgress ^.반환 되는 인터페이스의 함수에 전달 되는 람다 시그니처에 따라 달라 집니다.

설명

람다 식의 반환 형식을 구문 동작 또는 작업 인지를 확인 합니다.

Void를 반환 하는 람다 식을 작성 작업을 일으킬 합니다.형식의 결과 반환 하는 람다 식을 TResult 작업의 TResult 생성 될.

람다를 반환할 수도 있습니다는 task<TResult> aysnchronous 작업 자체 내에서 캡슐화 하거나 연속 일련의 비동기 작업을 나타내는 작업입니다.이 경우 작업은 비동기적으로 실행 되므로 람다 자체 실행된 인라인 이며 람다 식의 반환 형식을 반환 하는 비동기 구문이 생성 래핑이 해제 create_async.이 의미는 람다는 작업 <void>를 반환합니다 동작 및 <TResult> 작업을 반환 하는 람다 생성 될 수 있습니다. 만들기 작업 중 TResult 발생할 수 있습니다.

람다 0, 하나 또는 두 개의 인수를 걸릴 수 있습니다.올바른 인수는 progress_reporter<TProgress>cancellation_token, 순서 대로 모두 사용 한다는 점에서.람다 인수 없이 진행 상황을 보고 하는 기능 없이 비동기 구문 생성이 됩니다.<TProgress>는 progress_reporter를 사용 하는 람다 됩니다 create_async TProgress 형식의 진행 될 때마다 보고는 비동기 구조를 반환 하는 report progress_reporter 객체의 메서드를 호출할.Cancellation_token를 사용 하는 람다 해당 토큰을 사용 하 여 취소를 확인 하 있고 비동기 구성 취소 작업만 취소 되도록 만드는 작업에 전달할 수 있습니다.

람다 또는 function 개체의 본문은 결과 (및 않습니다 작업 <TResult>)를 반환 하는 경우는 lamdba MTA의 런타임 작업 컨텍스트에서 암시적으로 만들어집니다 프로세스 내에서 비동기적으로 실행 됩니다.IAsyncInfo::Cancel 메서드가 암시적 작업을 취소 하면 됩니다.

작업의 lamba은 람다 반환 본문, 인라인 실행 및 형식의 인수를 사용 하 여 람다를 선언 하 여 cancellation_token 에서 만들 때 해당 토큰을 전달 하 여 람다 식 내에서 작성 된 작업의 취소를 트리거할 수 있습니다.사용할 수도 있습니다는 register_callback 메서드를 호출 하면 콜백을 호출 하 여 런타임이 토큰 IAsyncInfo::Cancel async에서 작업이 나 동작을 생성 합니다.

이 함수는 지하철 스타일 응용 프로그램에만 가능합니다.

요구 사항

헤더: ppltasks.h

네임 스페이스: 동시성

참고 항목

참조

동시성 네임스페이스

작업 클래스

progress_reporter 클래스

기타 리소스

cancelation_token Class