使用RPC实现远程调用,那么客户端的代码并不需要我们特别关心,使用rpcgen
可以自动生成代码,我们需要做的就是去写,客户端调用服务器的那部分函数代码。
客户端
#include “double_v.h”
CLIENT *clnt;
clnt = clnt_create (host, DOUBLE_PROG, DOUBLE_VERS2, "udp");
double_in double_func_2_arg;
//...
double_out result_1 = double_func_2(&double_func_2_arg, clnt);
//..
CLIENT *clnt_create(const char *host,unsigned long program, unsigned long versnum,const char *protocol)
参数分别为主机名或者是主机ip,程序名(最外面一层),版本号(中间一层),程序名(具体函数)
都是用的是其定义的名字,但是在double_v.h
被定义为宏,对应于等号后面的数值。
网友评论