Parallel Activity
Purpose: Execute a set of activities in parallel. This activity executes all its child activities simultaneously, rather than waiting for each to complete.
Input Properties
This activity has no input properties. It contains child activities that are executed in parallel.
Output Properties
This activity has no output properties.
Child Activities
Activities
The collection of activities to execute in parallel.
Type: ICollection<IActivity>
Note: Add activities to this collection. They will all start executing at the same time.
Usage Example
Scenario: Execute multiple independent operations simultaneously Configuration: - Add activities to the Parallel: 1. SendHttpRequest to API 1 2. SendHttpRequest to API 2 3. ProcessLocalData Result: - All three activities start executing at the same time - The Parallel activity waits for all activities to complete - Total execution time is the longest of the three activities, not the sum
Important Notes
- Activities execute in parallel - all start at the same time
- The Parallel activity waits for all activities to complete before finishing
- If any activity faults, the Parallel activity may still wait for others (depending on configuration)
- Use Parallel for independent operations that don't depend on each other
- For sequential execution, use Sequence activity instead
- Be careful with shared resources - ensure thread safety if activities modify shared state
- Parallel execution can improve performance for I/O-bound operations
Related Activities
- Sequence - Execute activities sequentially instead of in parallel
- ParallelForEach - Execute iterations of a loop in parallel
- Workflow - A workflow is an activity that executes its Root activity