WEB开发网
开发学院服务器云计算 Thrift之TProcess类体系原理及源码详细解析 阅读

Thrift之TProcess类体系原理及源码详细解析

 2012-06-03 15:50:17 来源:WEB开发网   
核心提示:result.success = &_return;result.read(iprot_);//读取函数返回值iprot_->readMessageEnd();iprot_->getTransport()->readEnd();if (result.__isset.success) {//成功就返回结

 result.success = &_return;

 result.read(iprot_);//读取函数返回值

 iprot_->readMessageEnd();

 iprot_->getTransport()->readEnd();

 if (result.__isset.success) {//成功就返回结果(已经在_return里面),否则抛出异常

  return;

 }

 throw ::apache::thrift::TApplicationException(::apache::thrift::TApplicationException::MISSING_RESULT, "getName failed: unknown result");

上面代码就是处理远程调用的返回结果,代码里面有注释。一个服务函数的实现大概流程已经展现在我们面前了,处理的过程也已经清晰。这个只是用于客户端的处理流程,必须通过有效的机制来通知服务器端调用相应的函数(这就是RPC)在服务器端完成相应功能并将结果返回。这种机制就是通过我们这部分介绍的TProcessor类实现,这就是上面提到三个类中的第二个类,在这个实例中是FacebookServiceProcessor类,它从TProcessor类继承,重点实现两个函数process和process_fn,其中process会调用process_fn函数来处理客户端具体调用的那个服务函数,

上一页  6 7 8 9 10 11 12 13 14 15 16  下一页

Tags:Thrift TProcess 体系

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接