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

Ad Tanım
CSyncObject::CSyncObject Bir CSyncObject nesne oluşturur.

Genel Yöntemler

Ad Tanım
CSyncObject::Lock Eşitleme nesnesine erişim kazanır.
CSyncObject::Unlock Eşitleme nesnesine erişim kazanır.

Ortak İşleçler

Ad Tanım
CSyncObject::operator HANDLE Eşitleme nesnesine erişim sağlar.

Ortak Veri Üyeleri

Ad Tanım
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.

İade 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;

İade 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.

İade 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