1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved
.TH "SEM_GETVALUE" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual"
.\" sem_getvalue
.SH NAME
sem_getvalue \- get the value of a semaphore (\fBREALTIME\fP)
.SH SYNOPSIS
.LP
\fB#include <semaphore.h>
.br
.sp
int sem_getvalue(sem_t *restrict\fP \fIsem\fP\fB, int *restrict\fP
\fIsval\fP\fB); \fP
\fB
.br
\fP
.SH DESCRIPTION
.LP
The \fIsem_getvalue\fP() function shall update the location referenced
by the \fIsval\fP argument to have the value of the
semaphore referenced by \fIsem\fP without affecting the state of the
semaphore. The updated value represents an actual semaphore
value that occurred at some unspecified time during the call, but
it need not be the actual value of the semaphore when it is
returned to the calling process.
.LP
If \fIsem\fP is locked, then the object to which \fIsval\fP points
shall either be set to zero or to a negative number whose
absolute value represents the number of processes waiting for the
semaphore at some unspecified time during the call.
.SH RETURN VALUE
.LP
Upon successful completion, the \fIsem_getvalue\fP() function shall
return a value of zero. Otherwise, it shall return a value
of -1 and set \fIerrno\fP to indicate the error.
.SH ERRORS
.LP
The \fIsem_getvalue\fP() function shall fail if:
.TP 7
.B EINVAL
The \fIsem\fP argument does not refer to a valid semaphore.
.sp
.LP
\fIThe following sections are informative.\fP
.SH EXAMPLES
.LP
None.
.SH APPLICATION USAGE
.LP
The \fIsem_getvalue\fP() function is part of the Semaphores option
and need not be available on all implementations.
.SH RATIONALE
.LP
None.
.SH FUTURE DIRECTIONS
.LP
None.
.SH SEE ALSO
.LP
\fIsemctl\fP() , \fIsemget\fP() , \fIsemop\fP()
, \fIsem_post\fP() , \fIsem_timedwait\fP() , \fIsem_trywait\fP() ,
\fIsem_wait\fP() , the Base Definitions volume of
IEEE\ Std\ 1003.1-2001, \fI<semaphore.h>\fP
.SH COPYRIGHT
Portions of this text are reprinted and reproduced in electronic form
from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
-- Portable Operating System Interface (POSIX), The Open Group Base
Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of
Electrical and Electronics Engineers, Inc and The Open Group. In the
event of any discrepancy between this version and the original IEEE and
The Open Group Standard, the original IEEE and The Open Group Standard
is the referee document. The original Standard can be obtained online at
http://www.opengroup.org/unix/online.html .
|