InstanceStore.Execute Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Executa um comando de persistência de forma síncrona. Exemplos de comandos de persistência: LoadWorkflowCommand e SaveWorkflowCommand.
public:
System::Runtime::DurableInstancing::InstanceView ^ Execute(System::Runtime::DurableInstancing::InstanceHandle ^ handle, System::Runtime::DurableInstancing::InstancePersistenceCommand ^ command, TimeSpan timeout);
public System.Runtime.DurableInstancing.InstanceView Execute (System.Runtime.DurableInstancing.InstanceHandle handle, System.Runtime.DurableInstancing.InstancePersistenceCommand command, TimeSpan timeout);
member this.Execute : System.Runtime.DurableInstancing.InstanceHandle * System.Runtime.DurableInstancing.InstancePersistenceCommand * TimeSpan -> System.Runtime.DurableInstancing.InstanceView
Public Function Execute (handle As InstanceHandle, command As InstancePersistenceCommand, timeout As TimeSpan) As InstanceView
Parâmetros
- handle
- InstanceHandle
Um identificador de instância.
- command
- InstancePersistenceCommand
O comando a ser executado.
- timeout
- TimeSpan
O valor de tempo limite para a operação.
Retornos
Um objeto InstanceView que representa o estado conhecido da instância após a conclusão bem-sucedida do comando. Se Execute foi chamado em uma transação, esse estado poderá incluir dados não confirmados. Depois que a transação for confirmada com êxito, os dados no objeto InstanceView poderão ser considerados confirmados.
Comentários
Um host chama o Execute método para executar um comando de persistência em um identificador de instância, que o host obtém invocando o CreateInstanceHandle método . O identificador de instância pode estar associado a entidades que representam o contexto e o assunto do comando, como uma instância, um proprietário da instância ou um bloqueio de instância. Somente um comando pode ser emitido em um identificador de instância por vez.
Aviso
Se esse método for executado com um CreateWorkflowOwnerCommand, ele criará um InstanceOwner e o associará à instância . Isso significa que nenhum outro processo será capaz de acessar esse fluxo de trabalho; se o processo terminar, o fluxo de trabalho não poderá ser recuperado ou executado. Se esse fluxo de trabalho for executado novamente, um InstanceLockedException será gerado.
Se CreateWorkflowOwnerCommand não for usado, o repositório de instâncias criará um temporário InstanceOwner que será excluído no final do processo. No entanto, se o processo terminar antes do ponto de persistência final do fluxo de trabalho, essa exceção será gerada, a menos que o período de tempo especificado no parâmetro HostLockRenewalPeriod tenha expirado.