WAIT Instruction

This instruction will wait for specified objects to reach a stable state and then terminates.

Syntax

wait (elem1,elem2 ....,elemn)

where 'elemi' is either

Example:

wait ( A, all_in B, C )

where A and C are object names and B is an object set name

Description

In the following we consider an object to be in either of the two types of states:

  1. available - an object is neither busy (i.e. it is not executing an action), nor there are any actions queued on its internal action queue.
  2. not-available - an object is either busy, or there are actions queued on its internal action queue.

The wait instruction is 'synchronising' instruction. It takes as parameters a list of objects and/or list of object sets and it will behave as follows: