CComObjectThreadModel

# If définie (_ATL_SINGLE_THREADED)
  ;typedef CComSingleThreadModel CComObjectThreadModel ;

# Elif défini (_ATL_APARTMENT_THREADED)
  ;typedef CComSingleThreadModel CComObjectThreadModel ;

# else
  ;typedef CComMultiThreadModel CComObjectThreadModel ;

# endif

Selon le modèle de thread utilisé par votre application, le nom de typedef CComObjectThreadModel références CComSingleThreadModel ou CComMultiThreadModel. Ces classes fournissent les noms supplémentaires typedef pour référencer une classe de section critique.

&Notenbsp ;CComObjectThreadModel ne fait pas référence à la classe CComMultiThreadModelNoCS.

À l'aide de CComObjectThreadModel vous libère de la spécification d'une classe de modèle thread particulier. Indépendamment du modèle de thread utilisé, les méthodes appropriées seront appelées.

En plus de CComObjectThreadModel, ATL fournit le nom de typedef CComGlobalsThreadModel. La classe référencée par chaque typedef dépend du modèle de thread utilisé, comme le montre le tableau suivant:

Modèle de thread
typedef Unique Appartement Gratuit
CcomObjectThreadModel S S M
CcomGlobalsThreadModel S M M

S =CComSingleThreadModel; M =CComMultiThreadModel

Utiliser CComObjectThreadModel dans une classe d'objet unique. Utiliser CComGlobalsThreadModel dans un objet qui est soit à l'échelle mondiale disponible à votre programme, ou lorsque vous souhaitez protéger les ressources du module à travers plusieurs threads.

# include lt;atlbase.h>

Voir aussi  ;CComObjectRootEx

Index