37 lines
830 B
Markdown
37 lines
830 B
Markdown
# PR_ExitMonitor
|
|
|
|
Decrements the entry count associated with a specified monitor and, if
|
|
the entry count reaches zero, releases the monitor's lock.
|
|
|
|
## Syntax
|
|
|
|
```{code}
|
|
#include <prmon.h>
|
|
|
|
PRStatus PR_ExitMonitor(PRMonitor *mon);
|
|
```
|
|
|
|
### Parameter
|
|
|
|
The function has the following parameter:
|
|
|
|
`mon`
|
|
|
|
: A reference to an existing structure of type {ref}`PRMonitor`. The
|
|
monitor object referenced must be one for which the calling thread
|
|
currently holds the lock.
|
|
|
|
### Returns
|
|
|
|
The function returns one of the following values:
|
|
|
|
- If successful, `PR_SUCCESS`.
|
|
- If unsuccessful (the calling thread has not entered the monitor),
|
|
`PR_FAILURE`.
|
|
|
|
## Description
|
|
|
|
If the decremented entry count is zero, {ref}`PR_ExitMonitor` releases the
|
|
monitor's lock. Threads that were blocked trying to enter the monitor
|
|
will be rescheduled.
|