# If definida (_ATL_SINGLE_THREADED)
typedef CComSingleThreadModel CComGlobalsThreadModel;
# elif definida (_ATL_APARTMENT_THREADED)
typedef CComMultiThreadModel CComGlobalsThreadModel;
# else
typedef CComMultiThreadModel CComGlobalsThreadModel;
# endif
Dependendo do modelo de threading usado pelo seu aplicativo, o typedef nome CComGlobalsThreadModel referências CComSingleThreadModel ou CComMultiThreadModel. Essas classes fornecem nomes de adicionais typedef para fazer referência a uma classe de seção crítica.
&Notanbsp;CComGlobalsThreadModel não faz referência a classe CComMultiThreadModelNoCS.
Usar CComGlobalsThreadModel libera você de especificar uma classe de modelo de threading particular. Independentemente do modelo de threading sendo usado, se chamará os métodos apropriados.
Além de CComGlobalsThreadModel, ATL fornece o nome de typedef CComObjectThreadModel. A classe referenciada por cada typedef depende do modelo de threading usado, conforme mostrado na tabela a seguir:
| Modelo de Threading | |||
| typedef | Único | Apartamento | Grátis |
| CcomObjectThreadModel | S | S | M |
| CcomGlobalsThreadModel | S | M | M |
S =CComSingleThreadModel; M =CComMultiThreadModel
Use CComObjectThreadModel dentro de uma classe de objeto único. Usar CComGlobalsThreadModel em um objeto que está globalmente disponível para seu programa, ou quando você deseja proteger recursos do módulo em Múltiplo segmentos.
# include lt;atlbase.h>
Co&nsulte tambémnbsp;CComObjectRootEx