Udostępnij za pośrednictwem


WorkflowApplication.Persist Metoda

Definicja

Utrwala wystąpienie przepływu pracy w magazynie wystąpień.

Przeciążenia

Persist()

Utrwala wystąpienie przepływu pracy w magazynie wystąpień.

Persist(TimeSpan)

Utrwala wystąpienie przepływu pracy w magazynie wystąpień przy użyciu określonego interwału limitu czasu.

Uwagi

Jeśli wystąpienie przepływu pracy zostało wcześniej załadowane z trwałości, to to samo InstanceStore użyte do załadowania przepływu pracy jest używane do trwałości. Jeśli przepływ pracy został utworzony i nie został jeszcze utrwalone, InstanceStore należy go skonfigurować przed wywołaniem tej metody lub w przeciwnym razie InvalidOperationException jest zgłaszany podczas wywoływania tej metody.

Persist()

Utrwala wystąpienie przepływu pracy w magazynie wystąpień.

public:
 void Persist();
public void Persist ();
member this.Persist : unit -> unit
Public Sub Persist ()

Przykłady

W poniższym przykładzie wywołania Persist utrwalania wystąpienia przepływu pracy przed uruchomieniem przepływu pracy.

WorkflowApplication application = new WorkflowApplication(activity);

application.InstanceStore = instanceStore;

//returning IdleAction.Unload instructs the WorkflowApplication to persists application state and remove it from memory
application.PersistableIdle = (e) =>
{
    return PersistableIdleAction.Unload;
};

application.Unloaded = (e) =>
{
    instanceUnloaded.Set();
};

//This call is not required
//Calling persist here captures the application durably before it has been started
application.Persist();
id = application.Id;
application.Run();

instanceUnloaded.WaitOne();

Uwagi

Jeśli operacja utrwalania nie zostanie ukończona w ciągu 30 sekund, TimeoutException zostanie zgłoszony.

Jeśli wystąpienie przepływu pracy zostało wcześniej załadowane z trwałości, to to samo InstanceStore użyte do załadowania przepływu pracy jest używane do trwałości. Jeśli przepływ pracy został utworzony i nie został jeszcze utrwalone, InstanceStore należy go skonfigurować przed wywołaniem tej metody lub w przeciwnym razie InvalidOperationException jest zgłaszany podczas wywoływania tej metody.

Dotyczy

Persist(TimeSpan)

Utrwala wystąpienie przepływu pracy w magazynie wystąpień przy użyciu określonego interwału limitu czasu.

public:
 void Persist(TimeSpan timeout);
public void Persist (TimeSpan timeout);
member this.Persist : TimeSpan -> unit
Public Sub Persist (timeout As TimeSpan)

Parametry

timeout
TimeSpan

Interwał, w którym operacja utrwalania musi zostać ukończona przed anulowaniem TimeoutException operacji i zostanie zgłoszony.

Przykłady

W poniższym przykładzie wywołania Persist utrwalania wystąpienia przepływu pracy przed uruchomieniem przepływu pracy.

WorkflowApplication application = new WorkflowApplication(activity);

application.InstanceStore = instanceStore;

//returning IdleAction.Unload instructs the WorkflowApplication to persists application state and remove it from memory
application.PersistableIdle = (e) =>
{
    return PersistableIdleAction.Unload;
};

application.Unloaded = (e) =>
{
    instanceUnloaded.Set();
};

//This call is not required
//Calling persist here captures the application durably before it has been started
application.Persist();
id = application.Id;
application.Run();

instanceUnloaded.WaitOne();

Uwagi

Jeśli wystąpienie przepływu pracy zostało wcześniej załadowane z trwałości, to to samo InstanceStore użyte do załadowania przepływu pracy jest używane do trwałości. Jeśli przepływ pracy został utworzony i nie został jeszcze utrwalone, InstanceStore należy go skonfigurować przed wywołaniem tej metody lub w przeciwnym razie InvalidOperationException jest zgłaszany podczas wywoływania tej metody.

Dotyczy