Freigeben über


CritCheckIn-Funktion

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]

Gibt TRUE zurück, wenn der aktuelle Thread der Besitzer des angegebenen kritischen Abschnitts ist.

Syntax

BOOL WINAPI CritCheckIn(
   CCritSec *pcCrit
);

Parameter

pcCrit

Zeiger auf einen kritischen CCritSec-Abschnitt .

Rückgabewert

Gibt in Debugbuilds TRUE zurück, wenn der aktuelle Thread der Besitzer dieses kritischen Abschnitts ist, oder andernfalls FALSE . Gibt in Einzelhandelsbuilds immer TRUE zurück.

Bemerkungen

Diese Funktion ist besonders nützlich innerhalb des ASSERT-Makros , um zu testen, ob ein Thread eine bestimmte Sperre besitzt.

Beispiele

Im folgenden Codebeispiel wird die Verwendung dieser Funktion veranschaulicht:

{
    CCritSec MyLock;  // Critical section is not locked yet.
    
    ASSERT(CritCheckIn(&MyLock)); // This assert will fire.

    // Lock the critical section.    
    CAutoLock cObjectLock(&MyLock);
     
    ASSERT(CritCheckIn(&MyLock)); // This assert will not fire.

} // Lock goes out of scope here.

Anforderungen

Anforderung Wert
Header
Wxutil.h (einschließlich Streams.h)
Bibliothek
Strmbase.lib (Einzelhandelsbuilds);
Strmbasd.lib (Debugbuilds)

Siehe auch

Debuggen von Funktionen im kritischen Abschnitt