CSingleLock::Unlock
Zwalnia obiekt synchronizacji własnością CSingleLock.
BOOL Unlock( );
BOOL Unlock(
LONG lCount,
LPLONG lPrevCount = NULL
);
Parametry
lCount
Liczba dostępów do wydania.Musi być większa niż 0.Jeśli określona kwota mogłoby spowodować licznik obiektu przekracza maksymalną, licznik nie jest zmieniana i funkcja zwraca FALSE.lPrevCount
Punkty do zmiennej do odbierania poprzedni licznik obiektu synchronizacji.Jeśli NULL, poprzedni licznik nie jest zwracana.
Wartość zwracana
Niezerowa, jeśli funkcja zakończyła się pomyślnie; 0 inaczej.
Uwagi
Ta funkcja jest wywoływana przez CSingleLockprzez destruktor.
Aby zwolnić więcej niż jeden licznik dostępu semafora, należy użyć drugą formę Unlock i określić liczbę dostępów do wydania.
Przykład
// 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();
}
Wymagania
Nagłówek: afxmt.h