Freigeben über


CSingleLock-Klasse

Stellt den Mechanismus zur Zugriffssteuerung dar, mit dessen Hilfe der Zugriff auf Ressourcen in einem Multithreadprogramm gesteuert wird.

class CSingleLock

Mitglieder

Öffentliche Konstruktoren

Name

Description

CSingleLock::CSingleLock

Erstellt ein CSingleLock-Objekt.

Öffentliche Methoden

Name

Description

CSingleLock::IsLocked

Bestimmt, ob das Objekt gesperrt ist.

CSingleLock::Lock

wartet auf einem Synchronisierungsobjekt.

CSingleLock::Unlock

Gibt ein Synchronisierungsobjekt frei.

Hinweise

CSingleLock hat keine Basisklasse.

Um die Synchronisierungsklassen CSemaphore zu verwenden, CMutex, CCriticalSection und CEvent, müssen Sie entweder CSingleLock oder CMultiLock-Objekt von Wait an erstellen und das Synchronisierungsobjekt freigeben. Verwenden Sie CSingleLock, wenn Sie nur auf ein Objekt gleichzeitig warten müssen. Verwenden Sie CMultiLock , wenn mehrere Objekte gibt, die Sie zu einem bestimmten Zeitpunkt verwenden können.

Um ein CSingleLock-Objekt zu verwenden, rufen Sie ihren Konstruktor innerhalb einer Memberfunktion in der gesteuerten Klasse der Ressource auf. Rufen Sie dann die IsLocked-Memberfunktion auf, um zu bestimmen, ob die Ressource verfügbar ist. Wenn ja, fahren Sie mit dem Rest der Memberfunktion fort. Wenn die Ressource, entweder nicht verfügbar ist, warten Sie auf eine bestimmte Zeit, damit die Ressource freigegeben werden kann, oder geben Sie Fehler zurück. Nachgebrauch der Ressource ist, jeder Aufruf die Entsperren Sie-Funktion, wenn das CSingleLock-Objekt erneut verwendet werden soll, oder ermöglicht das zerstört werden CSingleLock vollständig Objekt.

CSingleLock-Objekte benötigen das Vorhandensein eines Objekts, das von CSyncObject abgeleitet wird. Dies ist normalerweise ein Datenmember der gesteuerten Klasse der Ressource. Weitere Informationen dazu, wie CSingleLock-Objekte, finden Sie im Artikel Multithreading: Erstellen der Synchronisierungsklassen verwendet.

Vererbungshierarchie

CSingleLock

Anforderungen

Header: afxmt.h

Siehe auch

Referenz

Hierarchiediagramm

CMultiLock-Klasse