Поделиться через


Функция CritCheckIn

[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]

Возвращает значение TRUE , если текущий поток является владельцем указанного критического раздела.

Синтаксис

BOOL WINAPI CritCheckIn(
   CCritSec *pcCrit
);

Параметры

pcCrit

Указатель на критический раздел CCritSec .

Возвращаемое значение

В отладочных сборках возвращает значение TRUE , если текущий поток является владельцем этого критического раздела, или FALSE в противном случае. В розничных сборках всегда возвращает значение TRUE.

Комментарии

Эта функция особенно полезна в макросе ASSERT , чтобы проверить, владеет ли поток заданной блокировкой.

Примеры

В следующем примере кода показано, как использовать эту функцию:

{
    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.

Требования

Требование Значение
Заголовок
Wxutil.h (включая Streams.h)
Библиотека
Strmbase.lib (розничные сборки);
Strmbasd.lib (отладочные сборки)

См. также раздел

Функции отладки критических разделов