CComObjectThreadModel
Llama a los métodos adecuados del modelo de subprocesos, independientemente del modelo de subprocesos utilizado.
#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
Comentarios
Dependiendo del modelo de subprocesos utilizado por la aplicación, el nombre CComObjectThreadModel de typedef hace referencia CComSingleThreadModel o CComMultiThreadModel.Estas clases proporcionan los nombres adicionales de typedef para hacer referencia a una clase de sección crítica.
[!NOTA]
CComObjectThreadModel no hace referencia a la clase CComMultiThreadModelNoCS.
Mediante CComObjectThreadModel le libera de especificar un tipo determinado del modelo de subprocesos.Independientemente del modelo de subprocesos utilizado, los métodos correspondientes se llamará.
además de CComObjectThreadModel, ATL proporciona el nombre CComGlobalsThreadModelde typedef .La clase a la que hace referencia cada typedef depende del modelo de subprocesos utilizado, como se muestra en la tabla siguiente:
definición de tipos |
subproceso único |
subproceso controlado |
subprocesamiento libre |
---|---|---|---|
CComObjectThreadModel |
S |
S |
M |
CComGlobalsThreadModel |
S |
M |
M |
BreakpointCComSingleThreadModel; M=CComMultiThreadModel
Uso CComObjectThreadModel dentro de una única clase de objeto.Utilice CComGlobalsThreadModel en un objeto que es o global disponible para el programa, o cuando desee proteger los recursos de módulo a través de varios subprocesos.
Requisitos
encabezado: atlbase.h