Partager via


synchronize

synchronise l'accès à la méthode cible.

[synchronize]

Notes

L'attribut de synchronisez C++ implémente une prise en charge de synchroniser la méthode cible d'objet. La synchronisation permet à plusieurs objets pour utiliser une ressource commune (telle qu'une méthode de classe) pour accéder de la méthode cible.

Le code inséré par cet attribut appelle la méthode appropriée d' Lock (déterminée par le modèle de thread) au début de la méthode cible. Lorsque la méthode est quittée, Unlock est appelé automatiquement. Pour plus d'informations sur ces fonctionnalités, consultez CComAutoThreadModule : : Verrouillage

Cet attribut requiert que coclasse, progid, ou un attribut de vi_progid (ou un attribut différent qui implique un d'eux) également être appliqués au même élément. Si attribut unique en est utilisé, les deux autres sont automatiquement appliqués. par exemple, si progid est appliqué, vi_progid et coclasse sont également appliqués.

Exemple

Le code suivant fournit la synchronisation pour la méthode d' UpdateBalance d'objet d' CMyClass .

// cpp_attr_ref_synchronize.cpp
// compile with: /LD
#define _ATL_ATTRIBUTES
#include "atlbase.h"
#include "atlcom.h"

[module(name="SYNC")];

[coclass,
 threading(both),
 vi_progid("MyProject.MyClass"),
 progid("MyProject.MyClass.1"),
 uuid("7a7baa0d-59b8-4576-b754-79d07e1d1cc3")
]
class CMyClass {
   float m_nBalance;

   [synchronize]
   void UpdateBalance(float nAdjust) {
      m_nBalance += nAdjust;
   }
};

Configuration requise

contexte d'attribut

S'applique à

Méthode de la classe, méthode

reproductible

Non

attributs requis

Un ou plusieurs des éléments suivants : coclasse, progid, ou vi_progid.

attributs valides

Aucun

Pour plus d'informations sur les contextes d'attribut, consultez contextes d'attribut.

Voir aussi

Autres ressources

Attributs COM

Attributes Samples