Requisitos denominados de C++: TimedLockable (desde C++11)
De cppreference.com
Los requisitos de BloqueableTemporizado describen las características de tipos que proporcionan semántica de bloqueo exclusivo temporizado para agentes de ejecución (hilos, procesos, tareas).
Contenido |
[editar] Requisitos
Para que un tipo L
sea BloqueableTemporizado, dados
-
rel_time
, un valor de una especialización de std::chrono::duration, y -
abs_time
, un valor de una especialización de std::chrono::time_point,
se deben satisfacer las siguientes condiciones para un objeto m
de tipo L
:
Expresión | Efectos | Valor de retorno |
---|---|---|
m.try_lock_for(rel_time) | Se bloquea durante la duración proporcionada rel_time o hasta que se adquiera un cerrojo en m .
|
true si se adquirió el cerrojo, de lo contrario false. |
m.try_lock_until(abs_time) | Se bloquea hasta que se alcance el punto de tiempo proporcionado abs_time o se adquiera un cerrojo en m .
|
true si se adquirió el cerrojo, de lo contrario false. |
[editar] Notas
Las funciones miembro {tt|try_lock_for}} y try_lock_until
obtienen un cerrojo no compartido en m en caso de éxito.
[editar] Biblioteca estándar
Los siguientes tipo de la biblioetca estándar satisfacen BloqueableTemporizado:
(C++11) |
Proporciona un servicio de exclusión mutua que implementa bloqueo con un tiempo de espera. (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++14) |
Proporciona un servicio de exclusión mutua compartida e implementa bloqueo con un tiempo de espera. (clase) |