[ Event Handling | The ECLiPSe Built-In Predicates | Reference Manual | Alphabetic Index ]

events_after(+Events)

Set up a series of after events Events.
+Events
A list of the form Event-Time or Event-every(Time)

Description

Events is a list of after events where each element of the list specifies one after event. Each element is either in the form of EventName-Time or EventName-every(Time) where the first form is equivalent to event_after(EventName, Time) and the second to event_after_every(EventName, Time). The difference between using a single events_after/1 and multiple calls to event_after/2, event_after/3 and event_after_every/2 to set up a series of after events is that with events_after/1, all the events are set up as a unit, and it is guaranteed that the relative orderings between the events are preserved, and that no after events will be raised until all the specified events have been setup.

See event_after/2, event_after/3 or event_after_every/2 for more details on after events.

Fail Conditions

None.

Resatisfiable

No.

Exceptions

(4) instantiation fault
Events is not instantiated.
(5) type error
Events is not a list of after events of the form Event-Time or Event-every(Time), where Event is an atom or a handle and Time is a positive (non-breal) number.

Examples

% set event handlers to write the event name
[eclipse 1]: set_event_handler(e1, writeln/1), set_event_handler(e2, writeln/1).

Yes (0.00s cpu)
[eclipse 2]:    events_after([e1-every(0.2),e2-0.5]), repeat,fail.
e1
e1
e2
e1
e1
^C
interruption: type a, b, c, e, or h for help : ? e1
abort
Aborting execution ...
% default real-time timer used, e1 is raised
Abort[eclipse 3]: cancel_after_event(e1, _).
e1

Yes (0.00s cpu)
% e2 is not a repeated event, so this fails...
[eclipse 4]: cancel_after_event(e2, _).

No (0.00s cpu)
[eclipse 5]:

See Also

event_after / 2, event_after / 3, event_after_every / 2, cancel_after_event / 2, events_after / 1, event / 1, set_event_handler / 2, current_after_events / 1, event_create / 2, event_retrieve / 2, get_flag / 2