.NET: [BREAKING] Enable sharing of workflow instances across concurrently executing runs (#1464)

* refactor: remove unused internals

* feat: Execution Mode for sharing a workflow among concurrent runs

* feat: Update WorkflowHostAgent to support concurrent execution

* Also update AsAgent APIs to support injecting a CheckpointManager and an IWorkflowExecutionEnvironment

* fix: Make Read logic consistent in DeclarativeWorkflowContext
This commit is contained in:
Jacob Alber
2025-10-15 21:34:17 +00:00
committed by GitHub
parent 69e1ab0409
commit 331c750515
67 changed files with 2152 additions and 1347 deletions
@@ -23,6 +23,11 @@ public static class InProcessExecution
/// </summary>
public static InProcessExecutionEnvironment OffThread { get; } = new(ExecutionMode.OffThread);
/// <summary>
/// Gets an execution environment that enables concurrent, off-thread in-process execution.
/// </summary>
public static InProcessExecutionEnvironment Concurrent { get; } = new(ExecutionMode.OffThread, enableConcurrentRuns: true);
/// <summary>
/// An InProcesExecution environment which will run SuperSteps in the event watching thread,
/// accumulating events during each SuperStep and streaming them out after each SuperStep is