WorkflowApplication.Persist 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
워크플로 인스턴스를 인스턴스 저장소에 지속합니다.
오버로드
Persist() |
워크플로 인스턴스를 인스턴스 저장소에 지속합니다. |
Persist(TimeSpan) |
지정한 시간 제한 간격을 사용하여 워크플로 인스턴스를 인스턴스 저장소에 지속합니다. |
설명
워크플로 instance 이전에 지속성에서 로드된 경우 워크플로를 로드하는 데 사용된 것과 동일한 InstanceStore 가 지속성에 사용됩니다. 워크플로가 만들어지고 아직 유지되지 않은 경우 이 메서드를 InstanceStore 호출하기 전에 를 구성해야 합니다. 그렇지 않으면 InvalidOperationException 이 메서드를 호출할 때 이 throw됩니다.
Persist()
워크플로 인스턴스를 인스턴스 저장소에 지속합니다.
public:
void Persist();
public void Persist ();
member this.Persist : unit -> unit
Public Sub Persist ()
예제
다음 예제에서는 를 호출 Persist 하여 워크플로가 시작되기 전에 워크플로 instance 유지합니다.
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();
설명
지속 작업이 30초 이내에 완료되지 않으면 이 TimeoutException throw됩니다.
워크플로 instance 이전에 지속성에서 로드된 경우 워크플로를 로드하는 데 사용된 것과 동일한 InstanceStore 가 지속성에 사용됩니다. 워크플로가 만들어지고 아직 유지되지 않은 경우 이 메서드를 InstanceStore 호출하기 전에 를 구성해야 합니다. 그렇지 않으면 InvalidOperationException 이 메서드를 호출할 때 이 throw됩니다.
적용 대상
Persist(TimeSpan)
지정한 시간 제한 간격을 사용하여 워크플로 인스턴스를 인스턴스 저장소에 지속합니다.
public:
void Persist(TimeSpan timeout);
public void Persist (TimeSpan timeout);
member this.Persist : TimeSpan -> unit
Public Sub Persist (timeout As TimeSpan)
매개 변수
- timeout
- TimeSpan
작업이 취소되고 TimeoutException이 throw되기 전에 지속 작업을 완료해야 하는 간격입니다.
예제
다음 예제에서는 를 호출 Persist 하여 워크플로가 시작되기 전에 워크플로 instance 유지합니다.
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();
설명
워크플로 instance 이전에 지속성에서 로드된 경우 워크플로를 로드하는 데 사용된 것과 동일한 InstanceStore 가 지속성에 사용됩니다. 워크플로가 만들어지고 아직 유지되지 않은 경우 이 메서드를 InstanceStore 호출하기 전에 를 구성해야 합니다. 그렇지 않으면 InvalidOperationException 이 메서드를 호출할 때 이 throw됩니다.
적용 대상
.NET