场景:
- thrift-0.9.3版本
1、阻塞模式TThreadPoolServer
从源码中很容易发现,该代码采用的是JDK中java.net.ServerSocket作为服务端套接字。
因此,很容易辅助理解其为什么为阻塞模式。
- 服务端的示例代码如下:
TServerSocketserverTran= newTServerSocket(18000);//负责服务端套接字的管理
Hello.Processor<Iface>pro= newProcessor<Iface>(newHelloImpl());
Factoryfactory= newTBinaryProtocol.Factory(true,true);
Argsargs= newArgs(serverTran);
args.processor(pro);
args.protocolFactory(factory);
TServerserver= newTThreadPoolServer(args);
server.serve();// 启动Server
|
- TServer 源码中启动代码如下:
server.serve();// 其源码如下:
publicvoid serve() {
|