TServerEventHandler类提供了用户连接和断开的时候,针对套接字的处理方式。
其中提供了两个函数
createContext 当一个新的用户连接的时候会被调用
deleteContext 当用户结束请求处理的时候会被调用
详细的流程可以查看TThreadPoolServer::Task,Task作为TThreadPoolServer的内部类,
在Task::run函数内部,当有连接进来的时候,会获取TServerEventHandler类的对象,判断是否
有实例化,对连接进行处理,详细的代码
boost::shared_ptr<TServerEventHandler> eventHandler =
server_.getEventHandler();
void* connectionContext = NULL;
if (eventHandler != NULL) {
connectionContext = eventHandler->createContext(input_, output_);
}
参考
http://blog.csdn.net/hbuxiaoshe/article/details/38942869
时间: 2024-09-29 00:48:08