CSemaphore::CSemaphore
Konstrukce a pojmenované nebo nepojmenované CSemaphore objektu.
CSemaphore(
LONG lInitialCount = 1,
LONG lMaxCount = 1,
LPCTSTR pstrName = NULL,
LPSECURITY_ATTRIBUTES lpsaAttributes = NULL
);
Parametry
lInitialCount
Používání počáteční počet pro semafor.Musí být větší nebo rovna 0 a menší než nebo rovno lMaxCount .lMaxCount
Maximální využití počet pro semafor.Musí být větší než 0.pstrName
Název semafor.Musí být poskytnuty, pokud bude semafor přístupná přes hranice procesu.Pokud NULL, Nepojmenovaný objekt.Pokud název odpovídá stávající semafor, vytvoří nový konstruktoru CSemaphore objekt, který odkazuje na semafor tohoto názvu.Pokud název odpovídá stávající objekt synchronizace, který není semafor, konstrukce se nezdaří.lpsaAttributes
Atributy zabezpečení objektu semaforu.Úplný popis této struktury, viz SECURITY_ATTRIBUTES v .
Poznámky
Přístup nebo uvolnění CSemaphore objekt, vytvořit CMultiLock nebo CSingleLock objektu a volání jeho Lock a Unlock funkce členů.
Poznámka k zabezpečení |
---|
Po vytvoření CSemaphore objekt, použijte GetLastError zajistit, že objektu mutex již neexistuje.Pokud objektu mutex neočekávaně, může to znamenat nepřátelských procesu je obsazení a může hodlá použít speciálně objektu mutex.V tomto případě se zavřít popisovač a pokračovat, pokud došlo k chybě při vytváření objektu doporučený postup s důrazem na zabezpečení. |
Požadavky
Záhlaví: afxmt.h