Descripción
Devuelve si el objeto de subproceso se puede unir.
Declaración
A continuación se muestra la declaración de la función std :: thread :: joinable.
bool joinable() const noexcept;
C ++ 11
bool joinable() const noexcept;
Parámetros
ninguna
Valor devuelto
Devuelve verdadero si el subproceso es unible o falso.
Excepciones
No-throw guarantee - nunca lanza excepciones.
Carreras de datos
Se accede al objeto.
Ejemplo
En el siguiente ejemplo para std :: thread :: joinable.
#include <iostream>
#include <thread>
#include <chrono>
void foo() {
std::this_thread::sleep_for(std::chrono::seconds(2));
}
int main() {
std::thread t;
std::cout << "before joinable: " << t.joinable() << '\n';
t = std::thread(foo);
std::cout << "after joinable: " << t.joinable() << '\n';
t.join();
std::cout << "after joining, joinable: " << t.joinable() << '\n';
}
La salida debería ser así:
before joinable: 0
after joinable: 1
after joining, joinable: 0