Compartilhar via


Enumeração COMAdminTxIsolationLevelOptions (comadmin.h)

Indica o nível de isolamento que deve ser usado para transações.

Syntax

typedef enum COMAdminTxIsolationLevelOptions {
  COMAdminTxIsolationLevelAny = 0,
  COMAdminTxIsolationLevelReadUnCommitted,
  COMAdminTxIsolationLevelReadCommitted,
  COMAdminTxIsolationLevelRepeatableRead,
  COMAdminTxIsolationLevelSerializable
} ;

Constantes

 
COMAdminTxIsolationLevelAny
Valor: 0
Há suporte para qualquer nível de isolamento. Um componente downstream que tem esse nível de isolamento sempre usa o mesmo nível de isolamento que seu componente de upstream imediato usa. Se o objeto raiz em uma transação tiver seu nível de isolamento configurado para COMAdminTxIsolationLevelAny, seu nível de isolamento se tornará COMAdminTxIsolationLevelSerializable.
COMAdminTxIsolationLevelReadUnCommitted
Uma transação pode ler qualquer dado, mesmo que esteja sendo modificado por outra transação. Qualquer tipo de novos dados pode ser inserido durante uma transação. Esse é o nível de isolamento menos seguro, mas permite a maior simultaneidade.
COMAdminTxIsolationLevelReadCommitted
Uma transação não pode ler dados que estão sendo modificados por outra transação que não foi confirmada. Qualquer tipo de novos dados pode ser inserido durante uma transação. Esse é o nível de isolamento padrão no Microsoft SQL Server.
COMAdminTxIsolationLevelRepeatableRead
Os dados lidos por uma transação atual não podem ser alterados por outra transação até que a transação atual seja concluída. Qualquer tipo de novos dados pode ser inserido durante uma transação.
COMAdminTxIsolationLevelSerializable
Os dados lidos por uma transação atual não podem ser alterados por outra transação até que a transação atual seja concluída. Nenhum dado novo pode ser inserido que afete a transação atual. Esse é o nível de isolamento mais seguro e é o padrão, mas permite o nível mais baixo de simultaneidade.

Comentários

Essa enumeração é usada para configurar o nível de isolamento da transação para componentes que usam transações. Ele também é usado para configurar o nível de isolamento para usar o serviço de transação sem componentes, sendo passado como um parâmetro para IServiceTransactionConfigBase::IsolationLevel. Esse método é chamado por meio de CServiceConfig para o trabalho enviado por meio da atividade criada por CoCreateActivity ou o trabalho que está entre chamadas para CoEnterServiceDomain e CoLeaveServiceDomain.

Se um componente downstream for configurado com um nível de isolamento mais alto do que um componente upstream e tentar se inscrever em uma transação, um erro resultará e a transação será anulada.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Cabeçalho comadmin.h

Confira também

CoCreateActivity

CoEnterServiceDomain

Configurando níveis de isolamento de transação