Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

rpc_set_async_ack(3ncs) [ultrix man page]

rpc_set_async_ack(3ncs) 												   rpc_set_async_ack(3ncs)

Name
       rpc_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.   Calling
       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.  Unfortu-
       nately, 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 problems exists, the application should set  asynchronous-acknowledgement  mode  to  get  greater
		     efficiency.

Files
See Also
       intro(3ncs)

															   rpc_set_async_ack(3ncs)

Check Out this Related Man Page

rpc_clear_binding(3ncs) 												   rpc_clear_binding(3ncs)

Name
       rpc_clear_binding - unset the binding of an RPC handle to a host and server (client only)

Syntax
       #include <idl/c/rpc.h>

       void rpc_$clear_binding(handle, status)
       handle_t handle;
       status_$t *status;

Arguments
       handle The RPC handle whose binding is being cleared.

       status The completion status.  If the completion status returned in is equal to status_$ok , then the routine that supplied it was success-
	      ful.

Description
       The routine removes any association between an RPC handle and a particular server and host, but it does not remove the association  between
       the  handle and an object.  This routine saves the RPC handle so that it can be reused to access the same object, either by broadcasting or
       after resetting the binding to another server.

       A remote procedure call made using an unbound handle is broadcast to all Local Location Brokers (LLBs) on the local network.  If the call's
       interface  and  the  object  identified	by  the  handle are both registered with any LLB, that LLB forwards the request to the registering
       server.	The client RPC runtime library returns the first response that it  receives  and  binds  the  handle  to  the  first  server  that
       responded.

       The routine is the inverse of the routine.

Examples
       Clear the binding represented in handle:
       rpc_$clear_binding (handle, &status);

Diagnostics
       This section lists status codes for errors returned by this routine in

       rpc_$not_in_call    An internal error.

       rpc_$proto_error    An internal protocol error.

Files
See Also
       intro(3ncs), rpc_bind(3ncs), rpc_clear_server_binding(3ncs), rpc_set_binding(3ncs)

															   rpc_clear_binding(3ncs)
Man Page