Aracılığıyla paylaş


CSyncObject Sınıfı

Win32'deki eşitleme nesneleri için ortak işlevsellik sağlayan saf bir sanal sınıf.

Sözdizimi

class CSyncObject : public CObject

Üyeler

Ortak Oluşturucular

Veri Akışı Adı Açıklama
CSyncObject::CSyncObject Bir CSyncObject nesne oluşturur.

Genel Yöntemler

Veri Akışı Adı Açıklama
CSyncObject::Lock Eşitleme nesnesine erişim kazanır.
CSyncObject::Unlock Eşitleme nesnesine erişim kazanır.

Ortak İşleçler

Veri Akışı Adı Açıklama
CSyncObject::operator HANDLE Eşitleme nesnesine erişim sağlar.

Ortak Veri Üyeleri

Veri Akışı Adı Açıklama
CSyncObject::m_hObject Temel alınan eşitleme nesnesinin tanıtıcısı.

Açıklamalar

Microsoft Foundation Sınıf Kitaplığı, öğesinden CSyncObjecttüretilen çeşitli sınıflar sağlar. Bunlar CEvent, CMutex, CCriticalSection ve CSemaphore'dir.

Eşitleme nesnelerini kullanma hakkında bilgi için Çoklu İş Parçacığı Kullanımı: Eşitleme Sınıflarını Kullanma makalesine bakın.

Devralma Hiyerarşisi

CObject

CSyncObject

Gereksinimler

Üst bilgi: afxmt.h

CSyncObject::CSyncObject

Sağlanan ada sahip bir eşitleme nesnesi oluşturur.

explicit CSyncObject(LPCTSTR pstrName);
virtual ~CSyncObject();

Parametreler

pstrName
Nesnenin adı. NULL ise pstrName null olur.

CSyncObject::Lock

Eşitleme nesnesi tarafından denetlenen kaynağa erişim kazanmak için bu işlevi çağırın.

virtual BOOL Lock(DWORD dwTimeout = INFINITE);

Parametreler

dwTimeout
Eşitleme nesnesinin kullanılabilir olmasını beklenecek süreyi milisaniye cinsinden belirtir (sinyal görüntülenir). SONSUZ ise, Lock geri dönmeden önce nesnenin işaretlenmesini bekler.

Dönüş Değeri

İşlev başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Eşitleme nesnesine sinyal gönderiliyorsa, Lock başarıyla döndürülecek ve iş parçacığı artık nesneye sahip olacaktır. Eşitleme nesnesi imzalanmamışsa (kullanılamıyorsa), Lock dwTimeOut parametresinde belirtilen milisaniye sayısına kadar eşitleme nesnesinin işaretlenmesini bekler. Eşitleme nesnesi belirtilen süre içinde sinyal verilmediyse hata Lock döndürür.

CSyncObject::m_hObject

Temel alınan eşitleme nesnesinin tanıtıcısı.

HANDLE m_hObject;

CSyncObject::operator HANDLE

Nesnenin CSyncObject tutamacını almak için bu işleci kullanın.

operator HANDLE() const;

Dönüş Değeri

Başarılı olursa, eşitleme nesnesinin tanıtıcısı; aksi takdirde NULL.

Açıklamalar

Windows API'lerini doğrudan çağırmak için tutamacı kullanabilirsiniz.

CSyncObject::Unlock

parametresiz bildirimi Unlock saf bir sanal işlevdir ve 'den CSyncObjecttüretilen tüm sınıflar tarafından geçersiz kılınmalıdır.

virtual BOOL Unlock() = 0; virtual BOOL Unlock(
    LONG lCount,
    LPLONG lpPrevCount = NULL);

Parametreler

lCount
Varsayılan uygulama tarafından kullanılmaz.

lpPrevCount
Varsayılan uygulama tarafından kullanılmaz.

Dönüş Değeri

Varsayılan uygulama her zaman TRUE döndürür.

Açıklamalar

bildiriminin iki parametreli varsayılan uygulaması her zaman TRUE döndürür. Bu işlev çağrılan iş parçacığının sahip olduğu eşitleme nesnesine erişimi serbest bırakmak için çağrılır. İkinci bildirim, denetimli bir kaynağa birden fazla erişim sağlayan semaforlar gibi eşitleme nesneleri için sağlanır.

Ayrıca bkz.

CObject Sınıfı
Hiyerarşi Grafiği