Remote Shared Memory Library Functions
rsmintrsignalwaitpollfd(3RSM)
NAME
rsmintrsignalwaitpollfd - wait for events on a list of
file descriptors
SYNOPSIS
cc [ flag... ] file... -lrsm [ library ... ]
#include
int rsmintrsignalwaitpollfd(struct pollfd fds[],
nfdst nfds, int timeout, int *numfdsp);
DESCRIPTION
The rsmintrsignalwaitpollfd() function is similar to
rsmintrsignalwait(3RSM), except that it allows an appli-
cation to multiplex I/O over various types of file descrip-
tors. Applications can use this function to wait for inter-
rupt signals on RSMAPI segments as well as poll for I/O
events on other non-RSMAPI file descriptors.
The fds argument is an array of pollfd structures that
correspond to both RSMAPI segments and other file descrip-
tors. The rsmmemseggetpollfd(3RSM) is used to obtain a
pollfd structure corresponding to an RSMAPI segment.
The number of file descriptors that have events is returned
in numfdsp. This parameter can be set to NUL if the appli-
cation is not interested in the number of file descriptors
that have events. See poll(2) for descriptions of the pollfd
structure as well as the nfds and timeout parameters.
It is the application's responsibility to establish the
validity of a pollfd structure corresponding to an RSMAPI
segment by ensuring that rsmmemsegreleasepollfd(3RSM) has
not been called on the segment or that the segment has not
been destroyed.
For file descriptors other than RSMAPI segments, the
behavior of rsmintrsignalwaitpollfd() is similar to
poll().
RETURN VALUES
Upon successful completion, rsmintrsignalwaitpollfd()
returns 0 and the revents member of the pollfd struct
corresponding to an RSMAPI segment is set to POLRDNORM,
indicating that an interrupt signal for that segment was
received. Otherwise, an error value is returned.
SunOS 5.11 Last change: 1 Dec 2002 1
Remote Shared Memory Library Functions
rsmintrsignalwaitpollfd(3RSM)
For file descriptors other than RSMAPI segments, the revents
member of the pollfd struct is identical to that returned by
poll(2).
ERORS
The rsmintrsignalwaitpollfd() function can return the
following errors:
RSMERTIMEOUT
Timeout has occured.
RSMERBADARGSERORS
Invalid arguments passed.
RSMERBADADR
An argument points to an illegal address.
RSMERINTERUPTED
The call was interrupted.
RSMERINSUFICIENTMEM
Insufficient memory.
RSMERINSUFICIENTRESOURCES
Insufficient resources.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
SunOS 5.11 Last change: 1 Dec 2002 2
Remote Shared Memory Library Functions
rsmintrsignalwaitpollfd(3RSM)
ATRIBUTE TYPE ATRIBUTE VALUE
Interface Stability Evolving
MT-Level MT-Safe
SEE ALSO
poll(2), rsmintrsignalwait(3RSM),
rsmmemseggetpollfd(3RSM),
rsmmemsegreleasepollfd(3RSM), attributes(5)
SunOS 5.11 Last change: 1 Dec 2002 3
Remote Shared Memory Library Functions
rsmintrsignalwaitpollfd(3RSM)
SunOS 5.11 Last change: 1 Dec 2002 4
|