Compartilhar via


sincronizar

Sincroniza o acesso para o método de destino.

[synchronize]

Comentários

O sincronizar atributo C++ implementa o suporte para o método de destino de um objeto de sincronização.Sincronização permite que vários objetos usar um recurso comum (como um método de uma classe), controlando o acesso do método de destino.

O código inserido por esse atributo chama adequada Lock método (determinado pelo modelo de threading) no início do método de destino.Quando o método é finalizado, Unlock é chamado automaticamente.Para obter mais informações sobre essas funções, consulte CComAutoThreadModule::Lock

Este atributo requer que o coclass, progid, ou vi_progid atributo (ou outro atributo implica um deles) também ser aplicadas ao mesmo elemento.Se qualquer atributo único for usado, as outras duas são aplicadas automaticamente.Por exemplo, se progid for aplicada, vi_progid e coclass também são aplicadas.

Exemplo

O código a seguir fornece sincronização para o UpdateBalance método da CMyClass objeto.

// 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;
   }
};

Requisitos

Contexto de atributo

Se aplica a

Método de classe, método

Reproduzíveis

Não

Atributos obrigatórios

Um ou mais das seguintes opções: coclass, progid, ou vi_progid.

Atributos inválidos

Nenhum

Para obter mais informações sobre os contextos de atributo, consulte Atributo contextos.

Consulte também

Outros recursos

Atributos COM

Attributes Samples