Megosztás a következőn keresztül:


CComSingleThreadModel osztály

Megjegyzés:

Az aktív sablontár (ATL) továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.

Ez az osztály metódusokat biztosít egy változó értékének növeléséhez és csökkenéséhez.

Szemantika

class CComSingleThreadModel

Tagok

Nyilvános típustdefiníciók

Név Description
CComSingleThreadModel::AutoCriticalSection A CComFakeCriticalSection osztályra hivatkozik.
CComSingleThreadModel::CriticalSection Hivatkozások osztály CComFakeCriticalSection.
CComSingleThreadModel::ThreadModelNoCS Hivatkozások CComSingleThreadModel.

Nyilvános módszerek

Név Description
CComSingleThreadModel::D ecrement A megadott változó értékének decresítése. Ez a megvalósítás nem szálbiztos.
CComSingleThreadModel::Növekmény A megadott változó értékét növeli. Ez a megvalósítás nem szálbiztos.

Megjegyzések

CComSingleThreadModel metódusokat biztosít egy változó értékének növeléséhez és csökkenéséhez. A CComMultiThreadModel és a CComMultiThreadModelNoCS ellentétben ezek a módszerek nem szálbiztosak.

Általában két név egyikét használjaCComSingleThreadModel: CComObjectThreadModel vagy CComGlobalsThreadModel.typedef Az egyes typedef osztályok által hivatkozott osztály a használt szálmodelltől függ, ahogyan az a következő táblázatban látható:

Typedef Egyszálas modell Lakásszálas modell Ingyenes szálláncmodell
CComObjectThreadModel S S H
CComGlobalsThreadModel S H H

S= CComSingleThreadModel; M= CComMultiThreadModel

CComSingleThreadModel maga három typedef nevet határoz meg. ThreadModelNoCS referenciák CComSingleThreadModel. AutoCriticalSection és CriticalSection a CComFakeCriticalSection referenciaosztály, amely üres módszereket biztosít egy kritikus szakasz tulajdonjogának megszerzéséhez és kiadásához.

Requirements

Fejléc: atlbase.h

CComSingleThreadModel::AutoCriticalSection

Használata esetén CComSingleThreadModela név AutoCriticalSection a typedefCComFakeCriticalSection osztályra hivatkozik.

typedef CComFakeCriticalSection AutoCriticalSection;

Megjegyzések

Mivel CComFakeCriticalSection nem biztosít kritikus szakaszt, a metódusok nem tesznek semmit.

A CComMultiThreadModel és a CComMultiThreadModelNoCS definíciókat tartalmaz a AutoCriticalSection. Az alábbi táblázat a szálmodell-osztály és a hivatkozott kritikus szakaszosztály AutoCriticalSectionközötti kapcsolatot mutatja be:

A következőben definiált osztály: Hivatkozott osztály
CComSingleThreadModel CComFakeCriticalSection
CComMultiThreadModel CComAutoCriticalSection
CComMultiThreadModelNoCS CComFakeCriticalSection

AutoCriticalSectionEmellett használhatja a typedefCriticalSection nevet is. Ha meg szeretné szüntetni a CRT indítási kódját, ne adjon meg AutoCriticalSection globális objektumokat vagy statikus osztálytagokat.

Example

Lásd: CComMultiThreadModel::AutoCriticalSection.

CComSingleThreadModel::CriticalSection

Használata esetén CComSingleThreadModela név CriticalSection a typedefCComFakeCriticalSection osztályra hivatkozik.

typedef CComFakeCriticalSection CriticalSection;

Megjegyzések

Mivel CComFakeCriticalSection nem biztosít kritikus szakaszt, a metódusok nem tesznek semmit.

A CComMultiThreadModel és a CComMultiThreadModelNoCS definíciókat tartalmaz a CriticalSection. Az alábbi táblázat a szálmodell-osztály és a hivatkozott kritikus szakaszosztály CriticalSectionközötti kapcsolatot mutatja be:

A következőben definiált osztály: Hivatkozott osztály
CComSingleThreadModel CComFakeCriticalSection
CComMultiThreadModel CComCriticalSection
CComMultiThreadModelNoCS CComFakeCriticalSection

CriticalSectionEmellett használhatja az typedefAutoCriticalSection nevet is. Ha meg szeretné szüntetni a CRT indítási kódját, ne adjon meg AutoCriticalSection globális objektumokat vagy statikus osztálytagokat.

Example

Lásd: CComMultiThreadModel::AutoCriticalSection.

CComSingleThreadModel::D ecrement

Ez a statikus függvény a p által mutatott változó értékét csökkeni.

static ULONG WINAPI Decrement(LPLONG p) throw();

Paraméterek

p
[in] Mutasson a dekrementálandó változóra.

Visszaadott érték

A decrement eredménye.

CComSingleThreadModel::Növekmény

Ez a statikus függvény növeli a p által mutatott változó értékét.

static ULONG WINAPI Increment(LPLONG p) throw();

Paraméterek

p
[in] Mutasson a növelendő változóra.

Visszaadott érték

A növekmény eredménye.

CComSingleThreadModel::ThreadModelNoCS

Használata CComSingleThreadModelesetén a typedef név ThreadModelNoCS egyszerűen hivatkozik CComSingleThreadModel.

typedef CComSingleThreadModel ThreadModelNoCS;

Megjegyzések

A CComMultiThreadModel és a CComMultiThreadModelNoCS definíciókat tartalmaz a ThreadModelNoCS. Az alábbi táblázat a szálmodell-osztály és a hivatkozott ThreadModelNoCSosztály közötti kapcsolatot mutatja be:

A következőben definiált osztály: Hivatkozott osztály
CComSingleThreadModel CComSingleThreadModel
CComMultiThreadModel CComMultiThreadModelNoCS
CComMultiThreadModelNoCS CComMultiThreadModelNoCS

Example

Lásd: CComMultiThreadModel::AutoCriticalSection.

Lásd még

osztály áttekintése