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


Класс CCritSec

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

Класс CCritSec обеспечивает блокировку потока.

Этот класс является тонкой оболочкой для объекта Windows CRITICAL_SECTION . Вы можете заблокировать и разблокировать поток, вызвав методы CCritSec::Lock и CCritSec::Unlock . Однако безопаснее использовать этот класс в сочетании с классом CAutoLock . Когда класс CAutoLock выходит из область, он автоматически разблокирует объект CCritSec. Кроме того, он компилируется для эффективного встроенного кода.

Открытые переменные-члены Описание
m_currentOwner Идентификатор потока,владеющего.
m_lockCount Количество незаполненных блокировок для этого объекта.
m_fTrace Логическое значение, указывающее, следует ли отслеживать эту блокировку.
Открытые методы Описание
CCritSec Метод конструктора.
~CCritSec Метод деструктора.
Lock Блокирует объект критического раздела.
Unlock Разблокирует объект критического раздела.

Требования

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

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

Критически важные объекты раздела

Справочник по базовому классу DirectShow