Biblioteca C ++ - <hilo>
Introducción
Thread es una secuencia de instrucciones que se pueden ejecutar simultáneamente con otras secuencias similares en entornos de múltiples subprocesos, mientras comparten un mismo espacio de direcciones.
Tipos de miembros
No Señor. | Tipo de miembro y descripción |
---|---|
1 | carné de identidad Es una identificación de hilo. |
2 | Tipo de mango nativo Es un tipo de identificador nativo. |
Funciones de miembro
No Señor. | Función y descripción del miembro |
---|---|
1 | (constructor) Se utiliza para construir hilos. |
2 | (incinerador de basuras) Se utiliza para destruir hilos. |
3 | operador = Es un hilo de asignación de movimiento. |
4 | get_id Se usa para obtener la identificación del hilo. |
5 | unible Se utiliza para comprobar si se puede unir. |
6 | unirse Se utiliza para unir hilos. |
7 | despegar Se utiliza para desprender hilo. |
8 | intercambiar Se utiliza para intercambiar hilos. |
9 | native_handle Se utiliza para obtener un identificador nativo. |
10 | hardware_concurrency [estática] Se utiliza para detectar la concurrencia de hardware. |
Sobrecargas de no miembros
No Señor. | Sobrecarga y descripción de no miembros |
---|---|
1 | intercambio (hilo) Se utiliza para intercambiar hilos. |
Ejemplo
En el siguiente ejemplo para std :: thread.
#include <iostream>
#include <thread>
void foo() {
std::cout << " foo is executing concurrently...\n";
}
void bar(int x) {
std::cout << " bar is executing concurrently...\n";
}
int main() {
std::thread first (foo);
std::thread second (bar,0);
std::cout << "main, foo and bar now execute concurrently...\n";
first.join();
second.join();
std::cout << "foo and bar completed.\n";
return 0;
}
La salida debería ser así:
main, foo and bar now execute concurrently...
bar is executing concurrently...
foo is executing concurrently...
foo and bar completed.