Multi-Threading Flow Design

1 In a Designer Project, click CREATE FLOW and select Flow to create a new Flow. 

2 Attach a Create Data step from the FAVORITE STEPS category of the Toolbox panel. Click SHOW EDITOR.

3 In the Data Definitions window, enter "AccountList" under NAME, select Account as the TYPE, and check IS LIST. Click Save and close the window.

4 Attach a Run Flows For List [Batch Processing] step from the Toolbox by navigating to SYSTEM > ADVANCED to the Done path.

5 On the Properties panel, set the Input Type and Output Type fields to Account.

6 Under the INPUTS category, map the desired AccountList to InputList. If desired, Constant map the Remove Null Results option.

7 Under the FLOW category, change Run Behavior to ASyncAndWait and declare a Queue Name.  

8 Under Thread Count, define the desired number of Threads for the step to utilize in parallel. Then, click the EDIT [THREAD FLOW NAME] button. 

9 From the newly opened Flow Designer, define the desired process logic; map the resulting value to INPUTS > Output Data on the End step. This example will use the Fetch Entities step to obtain Account items. About Process Logic 

As the description underneath the Action Bar suggests, the Thread processing Flow takes in the Input defined on the Run Flows For List step and processes through them to return a value for each item.

10 Save and close the Flow to return to the main Flow. Configure the rest of the Flow as desired.

Configuring a Flow with the [Start Linked Flow Async] Step

The Start Linked Flow Async step is one of the most commonly utilized steps to achieve asynchronous behavior. By using this step, users may achieve Multi-Threaded processing through the use of Job Queues on the step. 

1 From the Flow Designer, add a [Start Linked Flow Async] step from the FLOWS category of the Toolbox tab.

2 On the Properties panel under WORK QUEUE, check the Manage Execution Threads box.

3 Define a new ThreadJobName.

from: https://documentation.decisions.com/v9/docs/multi-threading-flow-design

Sign In or Register to comment.