Titan



done


The operation is used to wait for (a) given parallel test component(s) to finish executing the function that is running on this component.

The done operation bears a slightly different meaning on the two kinds of parallel test components:

Related keywords:


component_reference.done;  


Examples


Example 1a

vc_AncienVolcan.done;

The program execution is suspended until the component with reference vc_AncienVolcan has finished execution.


Example 1b:

all component.done;

The program execution is suspended until all parallel components have finished execution.


Example 1c:

[] any component.done { … }; 

This alternative in the alt statement will be invoked when any of the components has just finished execution.


Example 2

var PTCType_CT vc_myAlivePtc := PTCType_CT.create alive;
vc_myAlivePtc.start(f_myPtcFunction1());
vc_myAlivePtc.done;
vc_myAlivePtc.start(f_myPtcFunction2());
vc_myAlivePtc.done;
vc_myAlivePtc.kill;

The above example demonstrates how a single parallel test component can be used to execute functions subsequently.


BNF definition of done