NAME | FEATURE SUMMARY | API | ATTRIBUTES | SEE ALSO
Monitors are a way of synchronizing concurrent threads. A monitor is a set of functions in which only one thread may execute at a time. It is possible for a thread running inside a monitor to suspend its execution so that another thread may enter the monitor. The initial thread waits for the second one to notify it (for example, that a resource is now available) and then to exit the monitor. By extension to object-oriented languages such as the JavaTM language, monitor objects are associated with the set of functions. The functions take a monitor object as argument. Only one thread at a time uses a given monitor object. In this context, the term "monitor" often refers to the monitor object itself.
The MONITOR feature API is summarized in the following table:
Obtains the lock on the given monitor.
Initializes the given monitor.
Notifies one thread waiting in monitorWait().
Notifies all threads waiting in monitorWait().
Releases a lock on a given monitor.
Causes a thread that owns the lock on the given monitor to suspend itself until it receives notification from another thread.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
Interface Stability | Evolving |
monitorGet(2K), monitorInit(2K), monitorNotify(2K), monitorNotifyAll(2K), monitorRel(2K), monitorWait(2K), mutexGet(2K), mutexInit(2K), mutexRel(2K), MUTEX(5FEA)
NAME | FEATURE SUMMARY | API | ATTRIBUTES | SEE ALSO