| Technical Specification | ||||
| Filesystem library(filesystem TS) | ||||
| Library fundamentals(library fundamentals TS) | ||||
| Library fundamentals 2(library fundamentals TS v2) | ||||
| Library fundamentals 3(library fundamentals TS v3) | ||||
| Extensions for parallelism(parallelism TS) | ||||
| Extensions for parallelism 2(parallelism TS v2) | ||||
| Extensions for concurrency(concurrency TS) | ||||
| Extensions for concurrency 2(concurrency TS v2) | ||||
| Concepts(concepts TS) | ||||
| Ranges(ranges TS) | ||||
| Reflection(reflection TS) | ||||
| Mathematical special functions(special functions TR) | ||||
| Experimental Non-TS | ||||
| Pattern Matching | ||||
| Linear Algebra | ||||
| std::execution | ||||
| Contracts | ||||
| 2D Graphics |
Convenience aliases for containers usingpolymorphic_allocator | ||||
| Memory resource classes | ||||
| Global memory resources | ||||
| Type-erased allocator support for existing classes | ||||
packaged_task | ||||
This page is about the modified version ofstd::packaged_task with type-erased allocator support provided by the Library Fundamentals TSes. For the version ofpackaged_task provided by the concurrency TS supporting thestd::future improvements made by that TS, seestd::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 (andstd::experimental::fundamentals_v2::packaged_task) is a modified version ofstd::packaged_task provided by the library fundamentals TS with support for type-erased allocators.
Contents |
| Member type | Definition |
allocator_type | std::experimental::erased_type |
| constructs the task object (public member function)[edit] | |
| retrieves a pointer to the memory resource used by this object to allocate memory (public member function)[edit] |
specializes theswap algorithm(function template)[edit] |
| specializes thestd::uses_allocator type trait (class template specialization)[edit] |
| destructs the task object (public member function of std::packaged_task<R(Args...)>)[edit] | |
| moves the task object (public member function of std::packaged_task<R(Args...)>)[edit] | |
| checks if the task object has a valid function (public member function of std::packaged_task<R(Args...)>)[edit] | |
| swaps two task objects (public member function of std::packaged_task<R(Args...)>)[edit] | |
Getting the result | |
| returns astd::future associated with the promised result (public member function of std::packaged_task<R(Args...)>)[edit] | |
Execution | |
| executes the function (public member function of std::packaged_task<R(Args...)>)[edit] | |
| executes the function ensuring that the result is ready only once the current thread exits (public member function of std::packaged_task<R(Args...)>)[edit] | |
| resets the state abandoning any stored results of previous executions (public member function of std::packaged_task<R(Args...)>)[edit] | |