Partager via


InstanceStore.Execute Méthode

Définition

Exécute une commande de persistance de façon synchrone. LoadWorkflowCommand et SaveWorkflowCommand sont des exemples de commandes de persistance.

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

Paramètres

handle
InstanceHandle

Handle d'instance.

command
InstancePersistenceCommand

Commande à exécuter.

timeout
TimeSpan

Valeur de délai d'attente pour l'opération.

Retours

Objet InstanceView représentant l'état connu de l'instance une fois la commande exécutée avec succès. Si Execute a été appelé sous une transaction, cet état peut inclure des données non validées. Une fois la transaction validée avec succès, les données dans l’objet InstanceView peuvent être considérées comme validées.

Remarques

Un hôte appelle la méthode Execute pour exécuter une commande de persistance sur un handle d'instance, que l'hôte obtient en appelant la méthode CreateInstanceHandle. Le handle d'instance peut être lié à des entités qui représentent le contexte et l' objet de la commande, notamment une instance, un propriétaire d'instance ou un verrou d'instance. Une seule commande à la fois peut être émise sur un handle d'instance.

Avertissement

Si cette méthode est exécutée avec un CreateWorkflowOwnerCommand, elle crée un InstanceOwner et le lie à l’instance. Cela signifie qu’aucun autre processus ne sera en mesure d’accéder à ce flux de travail . si le processus se termine, le workflow ne peut pas être récupéré ou exécuté. Si un tel workflow est réexécuté, un InstanceLockedException est levée.

Si CreateWorkflowOwnerCommand n’est pas utilisé, le magasin instance crée un temporaire InstanceOwner qui sera supprimé à la fin du processus. Toutefois, si le processus se termine avant le point de persistance final du workflow, cette exception est levée, sauf si la période spécifiée dans le paramètre HostLockRenewalPeriod a expiré.

S’applique à