[definitionname := ] PARALLEL( actionlist )
definitionname | Optional. The action name, which turns the action into a definition, therefore not executed until the definitionname is used as an action. |
actionlist | A comma-delimited list of the actions to execute simultaneously. These may be ECL actions or external actions. |
The PARALLEL action allows the items in the actionlist to execute simultaneously. It does not force parallel execution, only allows it -- the compiler determines the actual execution order. This is already the default operative mode, so PARALLEL is only useful within the action list of a SEQUENTIAL set of actions.
Example:
Act1 :=
OUTPUT(A_People,OutputFormat1,'//hold01/fred.out');
Act2 :=
OUTPUT(Person,{Person.per_first_name,Person.per_last_name});
Act2 := OUTPUT(Person,{Person.per_last_name});
//by naming these actions, they become inactive definitions
//that only execute when the definition names are called as actions
SEQUENTIAL(Act1,PARALLEL(Act2,Act3));
//executes Act1 alone, and only when it's finished,
// executes Act2 and Act3 together
See Also: ORDERED , SEQUENTIAL