NAME | FEATURE SUMMARY | API | ATTRIBUTES
The EVENT feature provides management of event flag sets.
An event flags set is a set of bits in memory associated with a thread wait queue. Each bit is associated with one event. In this feature, the set is implemented as an unsigned integer, therefore the maximum number of flags in a set is 8*sizeof(int). Within a set, each event flag is designated by an integer 0 and 8*sizeof(int).
When a flag is set, it is said to be posted, and the associated event is considered to have occurred. Otherwise, the associated event has not yet occurred. Both threads and interrupt handlers can use event flag sets for signalling purposes.
A thread can wait for a conjunctive (and) or disjunctive (or) subset of the events in one event flags set. Several threads may be pending on the same event. In that case, each of the threads will be made eligible to run when the event occurs.
Three operations are available on event flag sets: eventWait, eventPost and enventClear.
Event flag sets are data structures allocated in the client actors' address spaces. No kernel data structure is allocated for these objects. they are simply designated by the address of the structures. The number of these types of objects that threads may use is thus unlimited.
The EVENT API is summarized in the following table:
Comment
Clear event(s) in an event flag set.
Initialize an event flag set.
Signal event(s) to an event flag set.
Wait for events in an event flag set.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
Interface Stability | Evolving |
NAME | FEATURE SUMMARY | API | ATTRIBUTES