std::packaged_task<R(Args...)>::operator=
来自cppreference.com
< cpp | thread | packaged task
并发支持库
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::packaged_task
| 成员函数 | ||||
packaged_task::operator= | ||||
| 获取结果 | ||||
| 执行 | ||||
| 非成员函数 | ||||
| 辅助类 | ||||
(C++17 前) | ||||
| 推导指引(C++17) |
packaged_task& operator=( const packaged_task& ) = delete; | (1) | (C++11 起) |
packaged_task& operator=( packaged_task&& rhs ) noexcept; | (2) | (C++11 起) |
1) 复制赋值运算符被弃置,
std::packaged_task 只能移动。2) 释放共享状态(如果存在),销毁先前保有的任务,并将 rhs 占有的共享状态和任务移动到 *this。使得 rhs 没有共享状态,并拥有被移动后的任务。
参数
| rhs | - | 移动来源的 std::packaged_task |
示例
| 本节未完成 原因:暂无示例 |
缺陷报告
下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。
| 缺陷报告 | 应用于 | 出版时的行为 | 正确行为 |
|---|---|---|---|
| LWG 2067 | C++11 | 复制赋值运算符的参数类型是 packaged_task& | 添加 const |