특정 워크 플로우의 n 개의 인스턴스를 생성하고 각각을 연속적으로 실행하는 루틴이 있습니다. 비동기 해제하려면 어떻게해야합니까?WF 4.0에서 동시에 여러 워크 플로우를 실행하는 가장 좋은 방법
현재 P 코드 :
forloop
// 만들기 var에 syncEvent = 새로운 AutoResetEvent (false)를; WorkflowInstance myInstance = new WorkflowInstance (새 SomeWorkflow(), 매개 변수);
// Events
// Completed
myInstance.OnCompleted = delegate(WorkflowCompletedEventArgs e) { syncEvent.Set(); };
// Unhandled Exception
myInstance.OnUnhandledException = delegate(WorkflowUnhandledExceptionEventArgs e)
{
// Message
Console.WriteLine(e.UnhandledException.ToString());
return UnhandledExceptionAction.Terminate;
};
// Aborted
myInstance.OnAborted = delegate(WorkflowAbortedEventArgs e)
{
// Message
Console.WriteLine(e.Reason);
syncEvent.Set();
};
// Run
myInstance.Run();
// Wait
syncEvent.WaitOne();
피해야 할 anon 방식의 단점은 무엇입니까? –