std::experimental:: packaged_task (library fundamentals TS)
From cppreference.net
<
cpp
|
experimental
|
lib extensions
本页面介绍的是由库基础技术规范提供的、支持类型擦除分配器的修改版
std::packaged_task
。关于由并发技术规范提供、支持该规范对
std::future
进行改进的
packaged_task
版本,请参阅
std::experimental::concurrency_v1::packaged_task
。
|
定义于头文件
<experimental/future>
|
||
|
template
<
class
>
class
packaged_task
;
//未定义
|
(1) | (库基础TS) |
|
template
<
class
R,
class
...
Args
>
class packaged_task < R ( Args... ) > ; |
(2) | (库基础TS) |
std::experimental::fundamentals_v1::packaged_task
(及
std::experimental::fundamentals_v2::packaged_task
)是由基础技术规范库提供的
std::packaged_task
改进版本,支持类型擦除分配器。
目录 |
成员类型
| 成员类型 | 定义 |
allocator_type
|
std::experimental::erased_type |
成员函数
|
构造任务对象
(公开成员函数) |
|
|
获取指向该对象用于分配内存的内存资源的指针
(公开成员函数) |
非成员函数
特化
swap
算法
(函数模板) |
辅助类
|
特化
std::uses_allocator
类型特征
(类模板特化) |
与 std:: packaged_task 相同的成员
成员函数
|
析构任务对象
(
std::packaged_task<R(Args...)>
的公开成员函数)
|
|
|
移动任务对象
(
std::packaged_task<R(Args...)>
的公开成员函数)
|
|
|
检查任务对象是否具有有效函数
(
std::packaged_task<R(Args...)>
的公开成员函数)
|
|
|
交换两个任务对象
(
std::packaged_task<R(Args...)>
的公开成员函数)
|
|
获取结果 |
|
|
返回与承诺结果关联的
std::future
(
std::packaged_task<R(Args...)>
的公开成员函数)
|
|
执行 |
|
|
执行函数
(
std::packaged_task<R(Args...)>
的公开成员函数)
|
|
|
执行函数并确保结果仅在当前线程退出时才就绪
(
std::packaged_task<R(Args...)>
的公开成员函数)
|
|
|
重置状态,放弃之前执行的任何存储结果
(
std::packaged_task<R(Args...)>
的公开成员函数)
|
|