CComObjectThreadModel

 

Chame os métodos apropriados do modelo de threads, independentemente do modelo de threads que está sendo usado.

Sintaxe

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

Comentários

Dependendo do modelo de segmentação usado pelo seu aplicativo, o nome CComObjectThreadModel 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.

Dica

CComObjectThreadModel não faz referência à classe CComMultiThreadModelNoCS.

Usar CComObjectThreadModel 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 CComObjectThreadModel, ATL fornece o nome CComGlobalsThreadModelde 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 ou global que está disponível ao seu programa, ou quando você deseja proteger recursos de módulo por vários segmentos.

Requisitos

Cabeçalho: atlbase.h

Consulte também

Classe de CComObjectRootEx
Visão geral da classe de ATL
ATL Typedefs