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


CSingleLock::Unlock

Освобождает объект синхронизации владелец которого CSingleLock.

BOOL Unlock( ); 
BOOL Unlock( 
   LONG lCount, 
   LPLONG lPrevCount = NULL  
);

Параметры

  • lCount
    Количество доступа к выпуску. Должно быть больше 0. Если указанное количество вызвало бы превысить его максимальное количество объектов, не изменять количество и возвращать FALSE функции.

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

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

Ненулевой если функция была успешна; в противном случае – значение 0.

Заметки

Эта функция называется деструктором CSingleLock.

Если необходимо освободить больше чем один счетчик семафора, использовать access вторая форма Unlock и определения количества доступа к выпуску.

Пример

// m_Mutex is a data member (of type CMutex)
// of an existing class that implements the resource being shared.

// Relate the synchronization object (m_Mutex) with
// our CSingleLock object. 
CSingleLock singleLock(&m_Mutex);

// Attempt to lock the shared resource
if (singleLock.Lock(100))    // Wait 100 ms...
{
    // We were able to lock the resource;
    // we may now work with the data associated with the mutex...

    // Now that we are finished, unlock the resource for others.
    singleLock.Unlock();
}

Требования

Header: afxmt.h

См. также

Ссылки

Класс CSingleLock

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