Sdílet prostřednictvím


Třída CMultiLock

Představuje mechanismus pro řízení přístupu, který se používá při řízení přístupu k prostředkům v programu s více vlákny.

class CMultiLock

Členy

Veřejné konstruktory

Název

Description

CMultiLock::CMultiLock

Konstrukce CMultiLock objektu.

Veřejné metody

Název

Description

CMultiLock::IsLocked

Určuje-li objekt synchronizace určitého pole je uzamčena.

CMultiLock::Lock

Čeká na pole objekty synchronizace.

CMultiLock::Unlock

Uvolní všechny objekty vlastněných synchronizace.

Poznámky

CMultiLockZákladní třída neobsahuje.

Použití třídy synchronizace CSemaphore, CMutex, a CEvent, můžete vytvořit buď CMultiLock nebo CSingleLock objekt, počkejte a uvolnit objekt synchronizace.Použít CMultiLock Pokud existuje více objektů, které můžete použít v určitém čase.Použití CSingleLock pouze potřebujete v době čekání na jeden objekt.

Použít CMultiLock objektů, nejprve vytvořit pole synchronizace objektů, které chcete čekat na.Dále volání CMultiLock konstruktoru objektu uvnitř členské funkce třídy kontrolovaných zdrojů.Zavolejte Lock členské funkce, pokud je zdroj k dispozici (signalizováno následným tichem).Pokud je jeden, pokračujte zbývající členské funkce.Pokud není k dispozici žádný prostředek, buď počkat o zadaný čas uvolnění prostředků nebo selhání.Po použití prostředku, který je buď volání Unlock fungovat CMultiLock objekt je znovu použít nebo povolit CMultiLock objektu zlikvidovány.

CMultiLock objekty jsou nejvhodnější, pokud podproces má velký počet CEvent může reagovat na objekty.Vytvoření pole obsahující všechny CEvent ukazatele a volání Lock .To způsobí podproces počkat, dokud jedna z událostí je signalizováno následným tichem.

Další informace o použití CMultiLock objekty, najdete v článku při souběžném: použití třídy synchronizace.

Hierarchii dědičnosti

CMultiLock

Požadavky

Záhlaví: afxmt.h

Viz také

Referenční dokumentace

Graf hierarchie