Espacios de nombres
Variantes
Acciones

std::jthread::hardware_concurrency

De cppreference.com
< cpp‎ | thread‎ | jthread
 
 
Biblioteca de apoyo de concurrencia
Hilos
(C++11)
(C++20)
Espacio de nombres this_thread
(C++11)
(C++11)
(C++11)
Cancelación cooperativa
Exclusión mutua
(C++11)
Gestión genérica de bloqueo
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
Variables de condición
(C++11)
Semáforos
Pestillos y barreras
(C++20)
(C++20)
Futuros
(C++11)
(C++11)
(C++11)
(C++11)
Recuperación segura
(C++26)
Punteros de riesgo
Tipos atómicos
(C++11)
(C++20)
Inicialización de tipos atómicos
(C++11)(en desuso en C++20)
(C++11)(en desuso en C++20)
Orden de memoria
Funciones independientes para operaciones atómicas
Funciones independientes para indicadores atómicos
 
 
[[nodiscard]] static unsigned int hardware_concurrency() noexcept;
(desde C++20)

Devuelve el número de hilos simultáneos soportados por la implementación. El valor debe considerarse solo una sugerencia.

Contenido

[editar] Parámetros

(Ninguno)

[editar] Valor de retorno

Número de hilos/subprocesos simultáneos soportados. Si el valor no está bien definido o no es computable, devuelve 0.

[editar] Ejemplo

#include <iostream>
#include <thread>
 
int main() {
    unsigned int n = std::jthread::hardware_concurrency();
    std::cout << "se soportan " << n << " hilos/subprocesos simultáneos.\n";
}

Posible salida:

se soportan 4 hilos/subprocesos simultáneos.

[editar] Véase también

Desplazamiento mínimo para evitar compartimiento falso (false sharing).
Desplazamiento máximo para promover compartimiento verdadero (true sharing).
(constante) [editar]