public void SimpleExecution() { var runtime = new WorkflowRuntime(); var handle = runtime.RunProgram(SampleProgram.Create()); // Simulate input reception string input = "400"; string bookmarkName = "ReadLine"; handle.Resume(bookmarkName, input); // Finished without problems }
public void SuspendedExecution() { var runtime = new WorkflowRuntime(); var handle = runtime.RunProgram(SampleProgram.Create()); Guid programId = handle.ProgramId; // Save the workflow handle.Passivate(); // Force GC handle = null; GC.Collect(); // Simulate input reception string input = "400"; string bookmarkName = "ReadLine"; // Get back the handle we "lost" handle = runtime.GetProgramHandle(programId); handle.Resume(bookmarkName, input); }