Compartilhar via


Sinalizadores consistentes e feitos

O COM+ sempre cria um objeto de contexto antes de ativar um objeto transacional. O objeto de contexto contém informações relacionadas ao objeto, como seu criador e seu identificador de transação. Cada objeto de contexto também contém um sinalizador consistente e um sinalizador feito. Juntos, esses sinalizadores determinam o status do objeto transacional.

O sinalizador consistente indica que o objeto transacional é consistente ou inconsistente. Os detalhes específicos do que torna o estado de um objeto consistente cabem ao programador. Quando uma chamada de método define esse sinalizador como True, o objeto é consistente. False indica que o objeto é inconsistente. COM+ define o sinalizador como True quando ele cria uma instância de objeto. Um objeto consistente está pronto para prosseguir com a transação. Embora um objeto permaneça ativo, as chamadas de método subsequentes podem alternar repetidamente o sinalizador consistente de True para False e vice-versa.

O sinalizador feito determina a duração de uma transação. Quando uma chamada de método é retornada, COM+ inspeciona o sinalizador concluído. Se o método definir esse sinalizador como True, COM+ desativa o objeto e anota o sinalizador consistente. Quando o sinalizador feito é False, COM+ não desativa o objeto nem anota o sinalizador consistente. COM+ define o sinalizador feito como False quando ele cria uma instância de objeto.

O sinalizador consistente vota para confirmar ou anular a transação na qual é executada, e o sinalizador feito finaliza a votação. O COM+ inspeciona o sinalizador consistente quando o sinalizador concluído é definido como True em um retorno de chamada de método ou quando o objeto desativa. Embora o sinalizador consistente de um objeto possa ser alterado repetidamente em cada chamada de método, apenas a última alteração conta.

gerenciamento de transações automáticas em COM+

definir os sinalizadores consistentes e feitos