std::packaged_task<R(Args...)>:: operator=
From cppreference.net
<
cpp
|
thread
|
packaged task
C++
Concurrency support library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::packaged_task
| Member functions | ||||
|
packaged_task::operator=
|
||||
| Getting the result | ||||
| Execution | ||||
| Non-member functions | ||||
| Helper classes | ||||
|
(until C++17)
|
||||
| Deduction guides (C++17) |
|
packaged_task
&
operator
=
(
const
packaged_task
&
)
=
delete
;
|
(1) | (desde C++11) |
|
packaged_task
&
operator
=
(
packaged_task
&&
rhs
)
noexcept
;
|
(2) | (desde C++11) |
1)
El operador de asignación por copia está eliminado,
std::packaged_task
es solo de movimiento.
2)
Libera el estado compartido, si existe, destruye la tarea previamente mantenida, y mueve el estado compartido y la tarea poseída por
rhs
hacia
*
this
.
rhs
queda sin un estado compartido y con una tarea en estado movido.
Parámetros
| rhs | - |
el
std::packaged_task
del cual mover
|
Ejemplo
|
Esta sección está incompleta
Razón: sin ejemplo |
Informes de defectos
Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares publicados anteriormente de C++.
| DR | Aplicado a | Comportamiento publicado | Comportamiento correcto |
|---|---|---|---|
| LWG 2067 | C++11 |
el tipo de parámetro del operador de asignación de copia era
packaged_task&
|
se agregó const |