diff --git a/src/cpp/server/server_builder.cc b/src/cpp/server/server_builder.cc index 391932c88e37445a07bc3a92707bff8dbeb161ba..daa79e5ae99f64fd3d060d7aeb27c424c5ceb883 100644 --- a/src/cpp/server/server_builder.cc +++ b/src/cpp/server/server_builder.cc @@ -133,7 +133,7 @@ std::unique_ptr<Server> ServerBuilder::BuildAndStart() { // If the server has atleast one sync methods, we know that this is a Sync // server or a Hybrid server and the completion queue (server->cq_) would be // frequently polled. - int num_frequently_polled_cqs = has_sync_methods ? 1 : 0; + int num_frequently_polled_cqs = (thread_pool != nullptr) ? 1 : 0; for (auto cq = cqs_.begin(); cq != cqs_.end(); ++cq) { // A completion queue that is not polled frequently (by calling Next() or @@ -143,10 +143,10 @@ std::unique_ptr<Server> ServerBuilder::BuildAndStart() { if ((*cq)->IsFrequentlyPolled()) { grpc_server_register_completion_queue(server->server_, (*cq)->cq(), nullptr); + num_frequently_polled_cqs++; } else { grpc_server_register_non_listening_completion_queue(server->server_, (*cq)->cq(), nullptr); - num_non_listening_cqs++; } }