InstanceStore.Execute Methode

Definitie

Hiermee wordt een persistentieopdracht synchroon uitgevoerd. Voorbeelden van persistentieopdrachten zijn: LoadWorkflowCommand en 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

Parameters

handle
InstanceHandle

Een exemplaarhandgreep.

command
InstancePersistenceCommand

De opdracht die moet worden uitgevoerd.

timeout
TimeSpan

De time-outwaarde voor de bewerking.

Retouren

Een InstanceView-object dat de bekende status van het exemplaar vertegenwoordigt na de geslaagde voltooiing van de opdracht. Als Execute is aangeroepen onder een transactie, kan deze status niet-verzonden gegevens bevatten. Zodra de transactie is doorgevoerd, kunnen de gegevens in het InstanceView-object worden beschouwd als doorgevoerd.

Opmerkingen

Een host roept de Execute methode aan om een persistentie-opdracht uit te voeren op basis van een exemplaar-handle, die de host verkrijgt door de CreateInstanceHandle methode aan te roepen. De instantiehandgreep kan zijn gebonden aan entiteiten die de context en het onderwerp van de opdracht vertegenwoordigen, zoals een exemplaar, exemplaareigenaar of exemplaarvergrendeling. Er kan slechts één opdracht tegelijk worden uitgegeven aan de hand van een exemplaarhandgreep.

Waarschuwing

Als deze methode wordt uitgevoerd met een CreateWorkflowOwnerCommand, wordt er een InstanceOwner gemaakt en gekoppeld aan het exemplaar. Dit betekent dat er geen ander proces toegang heeft tot die werkstroom; als het proces eindigt, kan de werkstroom niet worden hersteld of uitgevoerd. Als een dergelijke werkstroom opnieuw wordt uitgevoerd, wordt er een InstanceLockedException gegenereerd.

Als CreateWorkflowOwnerCommand dit niet wordt gebruikt, maakt het exemplaararchief een tijdelijke InstanceOwner opslag die aan het einde van het proces wordt verwijderd. Als het proces echter eindigt voor het laatste persistentiepunt van de werkstroom, wordt deze uitzondering gegenereerd, tenzij de periode die is opgegeven in de parameter HostLockRenewalPeriod is verlopen.

Van toepassing op