Condividi tramite


CComGlobalsThreadModel

Chiama i metodi appropriati del modello di threading, indipendentemente dal modello di threading utilizzato.

#if defined( _ATL_SINGLE_THREADED ) 
   typedef CComSingleThreadModel CComGlobalsThreadModel; 
#elif defined( _ATL_APARTMENT_THREADED ) 
   typedef CComMultiThreadModel CComGlobalsThreadModel; 
#elif defined( _ATL_FREE_THREADED ) 
   typedef CComMultiThreadModel CComGlobalsThreadModel; 
#else 
   #pragma message ("No global threading model defined") 
#endif

Note

A seconda del modello di threading utilizzato dall'applicazione, il nome CComGlobalsThreadModeltypedef fa riferimento CComSingleThreadModel o CComMultiThreadModel. Queste classi forniscono i nomi aggiuntivi typedef per fare riferimento a una classe di sezione critica.

Nota

CComGlobalsThreadModel non fa riferimento alla classe CComMultiThreadModelNoCS.

Utilizzando CComGlobalsThreadModel viene liberata da specificare una particolare classe del modello di threading. Indipendentemente dal modello di threading utilizzato, i metodi appropriati verranno chiamati.

Oltre a CComGlobalsThreadModel, ATL fornisce il nome CComObjectThreadModeldi typedef. La classe viene fatto riferimento da ogni typedef dipende dal modello di threading utilizzato, come illustrato nella tabella seguente:

typedef

Singolo thread

Threading apartment

Modello di threading Free

CComObjectThreadModel

S

S

M

CComGlobalsThreadModel

S

M

M

S=CComSingleThreadModel; M=CComMultiThreadModel

Utilizzo CComObjectThreadModel interno di un'unica classe di oggetto. Utilizzare CComGlobalsThreadModel in un oggetto che è disponibile a livello globale al programma, o quando si desidera proteggere le risorse del modulo in più thread.

Requisiti

Header: atlbase.h

Vedere anche

Riferimenti

CComObjectRootEx Class

Altre risorse

ATL Class Overview

ATL Typedefs