CAutoLock class

The CAutoLock class holds a critical section for the scope of a code block.

This class works in conjunction with the CCritSec class, which is a wrapper for critical section objects. The CAutoLock constructor locks the critical section, and the destructor unlocks it. By using a CAutoLock object as a local variable, you can lock a critical section with the guarantee that all code paths will unlock the critical section.

The following code example shows how to use this class:

CCritSec csMyLock;  // Critical section is not locked yet.
{
    CAutoLock cObjectLock(&csMyLock);  // Lock the critical section.

    // Protected section of code.     

} // Lock goes out of scope here.

The methods in this class are not designed to be overridden.

Protected Member Variables Description
m_pLock Critical section for this lock.
Public Methods Description
CAutoLock Constructor method. Locks the specified critical section object.
~CAutoLock Destructor method. Unlocks the critical section object.

Requirements

Header
Wxutil.h (include Streams.h)
Library
Strmbase.lib (retail builds);
Strmbasd.lib (debug builds)