CComObjectThreadModel
Appelle les méthodes appropriées de modèle de thread, quel que soit le modèle de thread utilisé.
#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
Notes
Selon le modèle de thread utilisé par votre application, le nom CComObjectThreadModel d' typedef référence CComSingleThreadModel ou CComMultiThreadModel.Ces classes fournissent des noms d'autres typedef pour référencer une classe de section critique.
[!REMARQUE]
CComObjectThreadModel ne référence pas la classe CComMultiThreadModelNoCS.
Utilisation CComObjectThreadModel vous libère de spécifier une classe particulière de modèle de thread.Indépendamment du modèle de thread utilisé, les méthodes appropriées sont appelées.
En plus de CComObjectThreadModel, ATL fournit le nom CComGlobalsThreadModeld' typedef .La classe référencée par chaque typedef dépend du modèle de thread utilisé, comme indiqué dans le tableau suivant :
typedef |
Monothread |
Thread cloisonné (STA) |
Modèle de thread libre |
---|---|---|---|
CComObjectThreadModel |
S |
S |
M |
CComGlobalsThreadModel |
S |
M |
M |
S=CComSingleThreadModel; M=CComMultiThreadModel
Utilisation CComObjectThreadModel dans une classe d'objet unique.Utilisation CComGlobalsThreadModel dans un objet qui est ou globalement disponible pour votre programme, ou lorsque vous souhaitez protéger les ressources package sur plusieurs threads.
Configuration requise
Header: atlbase.h