Scroll to navigation

RpcService(3I) InterViews Reference Manual RpcService(3I)


RpcService - support RPC between a service and its clients


#include <Dispatch/rpcservice.h>


An RpcService (actually, an instance of a derived class) creates a port and listens to it for connections from clients. When a client opens a connection, the RpcService will create a reader to handle RPC requests from the connection.


RpcService(int port)
RpcService(const char* path, int port = 0)
Start up an RPC service. If a filename is given, record the RPC service's hostname and port number in it so clients can contact the service. If ``port'' is zero, the next free port number will be used.


void run()
void quitRunning()
Read RPC requests continuously until ``quitRunning()'' terminates the loop. If you're using InterViews, you don't have to call ``run()'' since the InterViews event-reading code will also read RPC requests.


virtual void createReader(int fd) = 0
You must define this function in a derived class in order to start servicing RPC requests from a new client. Typically all you have to do is to construct a reader using the passed file descriptor and make the reader responsible for deleting itself when it notices that the connection has been closed by the client.


Dispatcher(3I), RpcReader(3I), RpcRegistry(3I)
27 March 1991 InterViews