Requisitos denominados de C++: Lockable (desde C++11)
De cppreference.com
El requisito Bloqueable extiende los requisitos de BloqueableBásico para incluir un intento de bloqueo.
Contenido |
[editar] Requisitos
Para que el tipo L
sea Bloqueable, debe cumplir con la condición anterior así como lo siguiente:
Expresión | Efectos | Valor de retorno |
---|---|---|
m.try_lock() | Intenta adquirir el cerrojo para el agente de ejecución actual (hilo, proceso, tarea) sin bloqueo. Si se lanza una excepción, no se obtiene ningún cerrojo. | true si se adquirió el cerrojo, de lo contrario false. |
[editar] Notas
La función miembro try_lock
obtiene un cerrojo no compartido en m en caso de éxito.
[editar] Biblioteca estándar
Los siguientes tipos de la biblioteca estándar satisfacen los requisitos Bloqueable:
(C++11) |
Proporciona servicios de exclusión mutua básicos. (clase) |
(C++11) |
Proporciona un servicio de bloqueo mutuo que puede ser bloqueado recursivamente por el mismo hilo/subproceso. (clase) |
(C++11) |
Proporciona un servicio de exclusión mutua que puede ser bloqueado recursivamente por el mismo hilo e implementa bloqueo con un tiempo de espera. (clase) |
(C++17) |
Proporciona un servicio de exclusión mutua compartida. (clase) |
(C++14) |
Proporciona un servicio de exclusión mutua compartida e implementa bloqueo con un tiempo de espera. (clase) |
(C++11) |
Proporciona un servicio de exclusión mutua que implementa bloqueo con un tiempo de espera. (clase) |