CComGlobalsThreadModel
Chame os métodos apropriados do modelo de threads, independentemente do modelo de threads que está sendo usado.
#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
Comentários
Dependendo do modelo de segmentação usado pelo seu aplicativo, o nome CComGlobalsThreadModel de typedef referencia CComSingleThreadModel ou CComMultiThreadModel.Essas classes fornecem nomes adicionais de typedef para fazer referência a uma classe de seção crítica.
Observação |
---|
CComGlobalsThreadModel não faz referência à classe CComMultiThreadModelNoCS. |
Usar CComGlobalsThreadModel o libera de especificar uma determinada classe de modelo.Independentemente do modelo de threads que está sendo usado, os métodos apropriados serão chamados.
Além de CComGlobalsThreadModel, ATL fornece o nome CComObjectThreadModelde typedef .A classe referenciada por cada typedef depende do modelo de segmentação usado, conforme mostrado na tabela seguinte:
typedef |
Segmentação única |
Thread Apartment |
Segmentação livre |
---|---|---|---|
CComObjectThreadModel |
S |
S |
M |
CComGlobalsThreadModel |
S |
M |
M |
S=CComSingleThreadModel; M=CComMultiThreadModel
Use CComObjectThreadModel em uma única classe de objeto.Use CComGlobalsThreadModel em um objeto que seja globalmente disponível ao seu programa, ou quando você deseja proteger recursos de módulo por vários segmentos.
Requisitos
Cabeçalho: atlbase.h