std::jthread:: detach
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Observers | ||||
| Operations | ||||
|
jthread::detach
|
||||
| Stop token handling | ||||
| Non-member functions | ||||
|
void
detach
(
)
;
|
(desde C++20) | |
Separa el hilo de ejecución del objeto jthread, permitiendo que la ejecución continúe de forma independiente. Cualquier recurso asignado será liberado una vez que el hilo finalice.
Después de llamar
detach
*
this
ya no posee ningún hilo.
Contenidos |
Parámetros
(ninguno)
Valor de retorno
(ninguno)
Postcondiciones
joinable es false .
Excepciones
std::system_error si joinable ( ) == false o ocurre un error.
Ejemplo
#include <chrono> #include <iostream> #include <thread> void independentThread() { std::cout << "Starting concurrent thread.\n"; std::this_thread::sleep_for(std::chrono::seconds(2)); std::cout << "Exiting concurrent thread.\n"; } void threadCaller() { std::cout << "Starting thread caller.\n"; std::jthread t(independentThread); t.detach(); std::this_thread::sleep_for(std::chrono::seconds(1)); std::cout << "Exiting thread caller.\n"; } int main() { threadCaller(); std::this_thread::sleep_for(std::chrono::seconds(5)); }
Salida posible:
Starting thread caller. Starting concurrent thread. Exiting thread caller. Exiting concurrent thread.
Referencias
- Estándar C++23 (ISO/IEC 14882:2024):
-
- 33.4.4.3 Miembros [thread.jthread.mem]
- Estándar C++20 (ISO/IEC 14882:2020):
-
- 32.4.3.2 Miembros [thread.jthread.mem]
Véase también
|
espera a que el hilo finalice su ejecución
(función miembro pública) |
|
|
comprueba si el hilo es joinable, es decir, potencialmente ejecutándose en contexto paralelo
(función miembro pública) |
|
|
documentación de C
para
thrd_detach
|
|