std::packaged_task<R(Args...)>:: operator()
From cppreference.net
<
cpp
|
thread
|
packaged task
C++
Concurrency support library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::packaged_task
| Member functions | ||||
| Getting the result | ||||
| Execution | ||||
|
packaged_task::operator()
|
||||
| Non-member functions | ||||
| Helper classes | ||||
|
(until C++17)
|
||||
| Deduction guides (C++17) |
|
void
operator
(
)
(
ArgTypes...
args
)
;
|
(C++11부터) | |
저장된 태스크를 INVOKE<R> ( f, args... ) 와 같이 호출합니다. 여기서 f 는 저장된 태스크입니다. 태스크의 반환값이나 발생한 예외는 공유 상태에 저장됩니다. 공유 상태가 준비 완료되고 이를 기다리던 모든 스레드의 차단이 해제됩니다.
목차 |
매개변수
| args | - | 저장된 작업 호출 시 전달할 매개변수 |
반환값
(없음)
예외
std::future_error 는 다음 오류 조건에서 발생합니다:
- 저장된 태스크가 이미 호출되었습니다. 오류 범주는 promise_already_satisfied 로 설정됩니다.
- * this 이 공유 상태를 가지고 있지 않습니다. 오류 범주는 no_state 로 설정됩니다.
예제
|
이 섹션은 불완전합니다
이유: 예제가 없음 |
결함 보고서
다음의 동작 변경 결함 보고서들은 이전에 발표된 C++ 표준에 소급 적용되었습니다.
| DR | 적용 대상 | 게시된 동작 | 올바른 동작 |
|---|---|---|---|
| LWG 2142 | C++11 |
operator
(
)
의 성공적인 호출이
자신의 공유 상태를 공유하는 std::future 또는 std::shared_future 의 멤버 함수 호출과 동기화됨 |
공유 상태가 이미 제공하는
동기화 보장 외에 추가적인 동기화 보장이 없음 |
참고 항목
|
함수를 실행하며 결과가 현재 스레드가 종료된 후에만 준비되도록 보장합니다
(public member function) |