when_all 함수

인수로 제공 되는 모든 작업을 성공적으로 완료 하면 성공적으로 완료 되는 작업을 만듭니다.

template <
   typename _Iterator
>
auto when_all(
   _Iterator_Begin,
   _Iterator_End
) -> decltype (details::_WhenAllImpl<std::iterator_traits<_Iterator>::value_type::result_type, _Iterator>::_Perform(nullptr, _Begin, _End));

template <
   typename _Iterator
>
auto when_all(
   _Iterator_Begin,
   _Iterator_End,
   cancellation_token _CancellationToken
) -> decltype (details::_WhenAllImpl<std::iterator_traits<_Iterator>::value_type::result_type, _Iterator>::_Perform(_CancellationToken._GetImplValue(), _Begin, _End));

매개 변수

  • _Iterator
    입력 반복기의 형식입니다.

  • _Begin
    작업 결과를 결합 하는 요소의 범위에 있는 첫 번째 요소의 위치입니다.

  • _End
    작업 결과를 결합 하는 요소 범위의 첫 번째 요소 위치입니다.

  • _CancellationToken
    반환 된 작업의 취소를 제어 하는 취소 토큰입니다.취소 토큰을 제공 하지 않으면 결과 작업 취소할 수 있는 모든 토큰의 조합 된 토큰과 만들어집니다 (토큰 이외의 방법을 사용 하 여 만든 **cancellation_token::none()**제공 하는 작업입니다.

반환 값

모든 입력된 작업이 성공적으로 완료 하면 성공적으로 완료 되는 작업입니다.입력된 작업 형식인 경우 T,이 함수의 출력 됩니다 있는 task<std::vector<T>>.입력된 작업 형식인 경우 void 출력 작업 또한 됩니다 있는 task<void>.

설명

작업 중 하나가 작업이 취소 되거나 예외가 throw 됩니다. 반환 된 작업에서 취소 상태를 조기에 완료 및 오류가 발생 한 경우 호출 하는 경우는 예외가 throw 됩니다 경우 get() 또는 wait() 작업을 합니다.

요구 사항

헤더: ppltasks.h

네임 스페이스: 동시성

참고 항목

참조

동시성 네임스페이스

개념

작업 병렬 처리(동시성 런타임)