CCritSec class

[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

The CCritSec class provides a thread lock.

This class is a thin wrapper for a Windows CRITICAL_SECTION object. You can lock and unlock the thread by calling the CCritSec::Lock and CCritSec::Unlock methods. However, it is safer to use this class in conjunction with the CAutoLock class. When the CAutoLock class goes out of scope, it automatically unlocks the CCritSec object. Moreover, it compiles to efficient inline code.

Public Member Variables Description
m_currentOwner Thread identifier of the owning thread.
m_lockCount Number of outstanding locks on this object.
m_fTrace Boolean value that specifies whether to trace this lock.
Public Methods Description
CCritSec Constructor method.
~CCritSec Destructor method.
Lock Locks the critical section object.
Unlock Unlocks the critical section object.

Requirements

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

See also

Critical Section Objects

DirectShow Base Class Reference