.. index:: pair: class; EE::System::ConditionalLock .. _doxid-class_e_e_1_1_system_1_1_conditional_lock: class EE::System::ConditionalLock ================================= .. toctree:: :hidden: Overview ~~~~~~~~ .. ref-code-block:: cpp :class: doxyrest-overview-code-block #include class ConditionalLock: private :ref:`EE::NonCopyable` { public: // construction :ref:`ConditionalLock`(bool condition, :ref:`Mutex`* mutex); :ref:`~ConditionalLock`(); }; .. _details-class_e_e_1_1_system_1_1_conditional_lock: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ Construction ------------ .. index:: pair: function; ConditionalLock .. _doxid-class_e_e_1_1_system_1_1_conditional_lock_1a1463e67957209c0e39c93a0657383302: .. ref-code-block:: cpp :class: doxyrest-title-code-block ConditionalLock(bool condition, :ref:`Mutex`* mutex) Construct the lock with a target mutex The mutex passed to :ref:`Lock ` is automatically locked. .. rubric:: Parameters: .. list-table:: :widths: 20 80 * - condition - Only if condition is true the mutex will be locked/unlocked. * - mutex - :ref:`Mutex ` to lock .. _doxid-class_e_e_1_1_system_1_1_conditional_lock_1a4467a16c6439760514821eb635e0a505: .. ref-code-block:: cpp :class: doxyrest-title-code-block ~ConditionalLock() Destructor The destructor of :ref:`Lock ` automatically unlocks its mutex.