next up previous
Next: CLRSTAT re-starts the gathering Up: PROCEDURES Previous: BEGINSCAN repeats the scanning

BLOCK blocks future events of release at a type R node

Syntax:

 BLOCK(<node name>);
It stops the creation of events in the node. Those events that would activate the node and are already in the FEL are put in suspended state (their SU parameters are set TRUE) so that they are not executed although their execution time are less than TIME. If the node to block is already blocked nothing is done. When the event state is changed again to active state (see DEBLOCK, 7.6) the delayed events are executed at the actual time.

This procedure can be used in nodes of any type.

Example:

  Arrivals (I) :: IT := Farr(TIME);
                        IF LL(EL_Entrance) > 8 THEN BLOCK(Arrivals);

  Entrance :: RELEASE BEGIN SENDTO(Parking)
                          LL(EL_Reception) < 5 THEN DEBLOCK(Arrivals);
                      END;
              STAY := TicketTime;
Messages (cars) are generated at irregular times given by the function Farr(TIME). When a queue of 9 is formed at the parking Entrance the generation is stopped (the scheduled next arrival is suspended) until the queue is less than 5. See DEBLOCK procedure (7.6) for another example.



domingo c
Mon Mar 20 17:37:52 PST 2000