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


CMutex::CMutex

Создает именованный или неименованный объект CMutex.

CMutex(
   BOOL bInitiallyOwn = FALSE,
   LPCTSTR lpszName = NULL,
   LPSECURITY_ATTRIBUTES lpsaAttribute = NULL 
);

Параметры

  • bInitiallyOwn
    Определяет, если поток создания объекта CMutex исходной имеет доступ к ресурсу проконтролированному мьютексами.

  • lpszName
    Имя объекта CMutex.Если другой мьютекс с таким же именем существует, то lpszName должен быть указан, если объект будет использоваться через границы процессов.Если NULL, мьютекс станет именованные.Если имя соответствует существующему мьютексу, конструктор создает новый объект CMutex, который ссылается на мьютекс с таким именем.Если имя соответствует существующему объекту, то синхронизации объектов взаимных исключений, конструкция, не завершится с ошибкой.

  • lpsaAttribute
    Атрибуты безопасности для объекта мьютекса.Полное описание структуры, см. в разделе SECURITY_ATTRIBUTES в Windows SDK.

Заметки

Чтобы получить доступ и освобождение объект CMutex создайте объект CMultiLock или CSingleLock и вызовите его блокировка и функции-члены Unlock.Если объект CMutex, используемое изолированное, вызовите его функцию-член Unlock для освобождения его.

Примечание о безопасностиПримечание по безопасности

После создания объекта CMutex, используйте GetLastError обеспечить мьютекс уже не существовало.Если мьютекс существовали неожиданно, они могут указывать на то, что процесс жулика находится на корточках и может использовать предназначать мьютекс злоумышленно.В этом случае рекомендуется безопасность- сознательная процедуры закрыть дескриптор и возобновлять если произошел сбой при создании объекта.

Требования

Header: afxmt.h

См. также

Ссылки

Класс CMutex

Диаграмма иерархии