Freigeben über


CComCritSecLock-Klasse

Diese Klasse stellt Methoden zum Sperren und Entsperren eines kritischen Abschnittsobjekts bereit.

Syntax

template<class TLock> class CComCritSecLock

Parameter

TLock
Das objekt, das gesperrt und entsperrt werden soll.

Member

Öffentliche Konstruktoren

Name Beschreibung
CComCritSecLock::CComCritSecLock Der Konstruktor.
CComCritSecLock::~CComCritSecLock Der Destruktor.

Öffentliche Methoden

Name Beschreibung
CComCritSecLock::Lock Rufen Sie diese Methode auf, um das kritische Abschnittsobjekt zu sperren.
CComCritSecLock::Unlock Rufen Sie diese Methode auf, um das kritische Abschnittsobjekt zu entsperren.

Hinweise

Verwenden Sie diese Klasse, um Objekte sicherer zu sperren und zu entsperren als mit der CComCriticalSection-Klasse oder der CComAutoCriticalSection-Klasse.

Anforderungen

Kopfzeile: atlbase.h

CComCritSecLock::CComCritSecLock

Der Konstruktor.

CComCritSecLock(TLock& cs, bool bInitialLock = true);

Parameter

Cs
Das kritische Abschnittsobjekt.

bInitialLock
Der anfängliche Sperrzustand: true bedeutet "gesperrt".

Hinweise

Initialisiert das kritische Abschnittsobjekt.

CComCritSecLock::~CComCritSecLock

Der Destruktor.

~CComCritSecLock() throw();

Hinweise

Entsperrt das kritische Abschnittsobjekt.

CComCritSecLock::Lock

Rufen Sie diese Methode auf, um das kritische Abschnittsobjekt zu sperren.

HRESULT Lock() throw();

Rückgabewert

Gibt S_OK zurück, wenn das Objekt erfolgreich gesperrt wurde oder ein HRESULT-Fehler aufgetreten ist.

Hinweise

Wenn das Objekt bereits gesperrt ist, tritt ein ASSERT-Fehler in Debugbuilds auf.

CComCritSecLock::Unlock

Rufen Sie diese Methode auf, um das kritische Abschnittsobjekt zu entsperren.

void Unlock() throw();

Hinweise

Wenn das Objekt bereits entsperrt ist, tritt ein ASSERT-Fehler in Debugbuilds auf.

Siehe auch

CComCriticalSection-Klasse
CComAutoCriticalSection-Klasse