前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >GRPC-C++源码分析(九)--Server

GRPC-C++源码分析(九)--Server

原创
作者头像
路小饭
修改2019-04-23 09:54:17
1.6K0
修改2019-04-23 09:54:17
举报
文章被收录于专栏:C++开源框架源码分析

对应《GRPC-C++源码分析(三)--main线程》中的1.2节 创建Server

代码语言:javascript
复制
  std::unique_ptr<Server> server(new Server(
      max_receive_message_size_, &args, sync_server_cqs,
      sync_server_settings_.min_pollers, sync_server_settings_.max_pollers,
      sync_server_settings_.cq_timeout_msec, resource_quota_,
      std::move(interceptor_creators_)));
  • sync_server_cqs作为参数传到了Server构造函数中,赋给了sync_server_cqs_

在Server的构造函数中填充了sync_req_mgrs_

代码语言:javascript
复制
    for (const auto& it : *sync_server_cqs_) {
      sync_req_mgrs_.emplace_back(new SyncRequestThreadManager(
          this, it.get(), global_callbacks_, server_rq, min_pollers,
          max_pollers, sync_cq_timeout_msec));
    }
  • 注意sync_server_cqs_作为参数传到了SyncRequestThreadManager构造函数中,赋给了server_cq_,这个server_cq_会在后面用到

在Server的构造函数中生成了grpc_server* server_;

代码语言:javascript
复制
server_ = grpc_server_create(&channel_args, nullptr);
  • 这里的server_会在稍后的grpc_server_register_completion_queue方法中用到

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档