Aracılığıyla paylaş


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

Ayrıca bkz.

Başvuru

CSingleLock sınıfı

Hiyerarşi grafik