std::experimental::packaged_task (library fundamentals TS)
From cppreference.com
< cpp | experimental | lib extensions
This page is about the modified version of std::packaged_task with type-erased allocator support provided by the Library Fundamentals TSes. For the version of packaged_task provided by the concurrency TS supporting the std::future improvements made by that TS, see std::experimental::concurrency_v1::packaged_task
|
Defined in header
<experimental/future>
|
||
|
template
<
class
>
class packaged_task;
//not defined
|
(1) | (library fundamentals TS) |
|
template
<
class R, class ...Args
>
class packaged_task<R(Args...) > ; |
(2) | (library fundamentals TS) |
std::experimental::fundamentals_v1::packaged_task (and std::experimental::fundamentals_v2::packaged_task) is a modified version of std::packaged_task
Member types
| Member type | Definition |
allocator_type
|
std::experimental::erased_type |
Member functions
| constructs the task object (public member function) |
|
| retrieves a pointer to the memory resource used by this object to allocate memory (public member function) |
Non-member function
specializes the swap algorithm (function template) |
Helper classes
| specializes the std::uses_allocator type trait (class template specialization) |
Members identical to std::packaged_task
Member functions
| destructs the task object (public member function of std::packaged_task<R(Args...)>) |
|
| moves the task object (public member function of std::packaged_task<R(Args...)>) |
|
| checks if the task object has a valid function (public member function of std::packaged_task<R(Args...)>) |
|
| swaps two task objects (public member function of std::packaged_task<R(Args...)>) |
|
Getting the result | |
| returns a std::future associated with the promised result (public member function of std::packaged_task<R(Args...)>)
|
|
Execution | |
| executes the function (public member function of std::packaged_task<R(Args...)>) |
|
| executes the function ensuring that the result is ready only once the current thread exits (public member function of std::packaged_task<R(Args...)>) |
|
| resets the state abandoning any stored results of previous executions (public member function of std::packaged_task<R(Args...)>) |
|