rpc_set_async_ack(3ncs)rpc_set_async_ack(3ncs)Namerpc_set_async_ack - set or clear asynchronous-acknowledgement mode
(client only)
Syntax
#include <idl/c/rpc.h>
void rpc_$set_async_ack (state)
unsigned long state;
Arguments
state If "true" (nonzero), asynchronous-acknowledgement
mode is set. If "false" (zero), synchronous-
acknowledgement mode is set.
Description
The call sets or clears asynchronous-acknowledgement mode in a client.
Synchronous-acknowledgement mode is the default. Calling with a
nonzero value for state sets asynchronous-acknowledgement mode. Call‐
ing it with a zero value for state sets synchronous-acknowledgement
mode.
After a client makes a remote procedure call and receives a reply from
a server, the RPC runtime library at the client acknowledges its
receipt of the reply. This "reply acknowledgement" can occur either
synchronously (before the runtime library returns to the caller) or
asynchronously (after the runtime library returns to the caller).
It is generally good to allow asynchronous reply acknowledgements.
Asynchronous-acknowledgement mode can save the client runtime library
from making explicit reply acknowledgements, because after a client
receives a reply, it may shortly issue another call that can act as an
implicit acknowledgement.
Asynchronous-acknowledgement mode requires that an "alarm" be set to go
off sometime after the remote procedure call returns. Unfortunately,
setting the alarm can cause two problems:
1 There may be only one alarm that can be set, and the
application itself may be trying to use it.
2 If, at the time the alarm goes off, the application is
blocked in a system call that is doing I/O to a "slow
device" (such as a terminal), the system call will return
an error (with the EINTR errno); the application may not
be coded to expect this error. If neither of these prob‐
lems exists, the application should set asynchronous-
acknowledgement mode to get greater efficiency.
FilesSee Alsointro(3ncs)rpc_set_async_ack(3ncs)