WorkflowApplication.Persist Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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.