CComGlobalsThreadModel

# If definito (_ATL_SINGLE_THREADED)
 typedef CComSingleThreadModel CComGlobalsThreadModel;

# Elif definito (_ATL_APARTMENT_THREADED)
 typedef CComMultiThreadModel CComGlobalsThreadModel;

# else
 typedef CComMultiThreadModel CComGlobalsThreadModel;

# endif

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

&Notanbsp;CComGlobalsThreadModel non fa riferimento a classe CComMultiThreadModelNoCS.

Utilizzando CComGlobalsThreadModel libera da specificando una particolare classe di modello di threading. Indipendentemente dal modello di threading utilizzato, si chiamerà i metodi appropriati.

Oltre a CComGlobalsThreadModel, ATL fornisce il nome di typedef CComObjectThreadModel. La classe a cui fa riferimento ogni typedef dipende il modello di threading utilizzato, come illustrato nella tabella seguente:

Modello di threading
typedef Singolo Appartamento Gratis
CcomObjectThreadModel S S M
CcomGlobalsThreadModel S M M

S =CComSingleThreadModel; M =CComMultiThreadModel

All'interno di una classe del singolo oggetto, utilizzare CComObjectThreadModel . Utilizzare CComGlobalsThreadModel in un oggetto che è globalmente disponibile al vostro programma, o quando si desidera proteggere il modulo risorse tra thread multipli.

# include lt;atlbase.h>

Vedere a&nchenbsp;CComObjectRootEx

Index