CSingleLock::Lock
İçin sağlanan eşitleme nesnesi tarafından denetlenen kaynağa erişmek için bu işlev çağrısı CSingleLock kurucusu.
BOOL Lock(
DWORD dwTimeOut = INFINITE
);
Parametreler
- dwTimeOut
Eşitleme nesnesi kullanılabilir olması beklenecek süreyi belirtir (erdiği).SONSUZ, Lock dönmeden önce nesneyi erdiği kadar bekleyecektir.
Dönüş Değeri
Sıfır olmayan bir değer işlevi başarılı olursa; Aksi halde 0.
Notlar
Eşitleme nesnesi erdiği, Lock başarıyla döner ve iş parçacığı şimdi nesnenin sahibi.Eşitleme nesnesi nonsignaled ise (kullanılamaz), Lock eşitleme nesnesi haline erdiği belirtilen milisaniye sayısı kadar bekler dwTimeOut parametresi.Eşitleme nesnesi belirtilen süreyi erdiği haline değil, Lock hatası döndürür.
Örnek
// 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();
}
Gereksinimler
Başlık: afxmt.h