다음을 통해 공유


task_handle 클래스

task_handle 클래스는 개별 병렬 작업 항목을 나타냅니다. 작업을 실행하는 데 필요한 지침 및 데이터를 캡슐화합니다.

구문

template<
    typename _Function
>
class task_handle : public ::Concurrency::details::_UnrealizedChore;

매개 변수

_함수
개체가 나타내는 작업을 실행하기 위해 호출될 함수 개체의 task_handle 형식입니다.

멤버

공용 생성자

속성 설명
Task_handle task_handle 개체를 생성합니다. 작업 작업은 생성자에 매개 변수로 지정된 함수를 호출하여 수행됩니다.
~task_handle 소멸자 개체를 task_handle 삭제합니다.

Public 연산자

이름 설명
operator() 런타임이 작업 핸들의 작업을 수행하기 위해 호출하는 함수 호출 연산자입니다.

설명

task_handle개체를 보다 일반적인 task_group 개체와 함께 structured_task_group 사용하여 작업을 병렬 작업으로 분해할 수 있습니다. 자세한 내용은 작업 병렬 처리를 참조하세요.

개체의 task_handle 작성자는 동시성 런타임에서 더 이상 필요하지 않을 때까지 만든 task_handle 개체의 수명을 기본 담당합니다. 일반적으로 이는 개체가 큐에 task_handle 대기 중인 개체 또는 run_and_waitstructured_task_group 메서드가 task_group 호출될 때까지 wait 소멸되지 않아야 함을 의미합니다.

task_handle 개체는 일반적으로 C++ 람다와 함께 사용됩니다. 람다 의 실제 형식을 모르기 때문에 make_task 함수는 일반적으로 개체를 task_handle 만드는 데 사용됩니다.

런타임은 개체에 전달하는 작업 함수의 복사본을 task_handle 만듭니다. 따라서 개체에 전달하는 task_handle 함수 개체에서 발생하는 상태 변경 내용은 해당 함수 개체의 복사본에 표시되지 않습니다.

상속 계층 구조

task_handle

요구 사항

헤더: ppl.h

네임스페이스: 동시성

operator()

런타임이 작업 핸들의 작업을 수행하기 위해 호출하는 함수 호출 연산자입니다.

void operator()() const;

Task_handle

task_handle 개체를 생성합니다. 작업 작업은 생성자에 매개 변수로 지정된 함수를 호출하여 수행됩니다.

task_handle(const _Function& _Func);

매개 변수

_Func
개체가 나타내는 작업을 실행하기 위해 호출될 task_handle 함수입니다. 람다 펀터, 함수에 대한 포인터 또는 시그니처 void operator()()가 있는 함수 호출 연산자의 버전을 지원하는 개체일 수 있습니다.

설명

런타임은 생성자에 전달하는 작업 함수의 복사본을 만듭니다. 따라서 개체에 전달하는 task_handle 함수 개체에서 발생하는 상태 변경 내용은 해당 함수 개체의 복사본에 표시되지 않습니다.

~Task_handle

개체를 task_handle 삭제합니다.

~task_handle();

참고 항목

concurrency 네임스페이스
task_group 클래스
structured_task_group 클래스