aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/grpc++/server_builder.h
diff options
context:
space:
mode:
authorGravatar Vijay Pai <vpai@google.com>2017-09-07 15:35:21 -0700
committerGravatar Vijay Pai <vpai@google.com>2017-09-07 15:35:21 -0700
commit66eaa32773e21a82afd933c75ee7bc682a2483a7 (patch)
tree7edfd813a2f04f8b392e34e9c788c4168f373a01 /include/grpc++/server_builder.h
parent8941f607d682d49f0b7c901bffd3e52941e4c5f9 (diff)
Specify that ServerCompletionQueue must be drained.
Diffstat (limited to 'include/grpc++/server_builder.h')
-rw-r--r--include/grpc++/server_builder.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/include/grpc++/server_builder.h b/include/grpc++/server_builder.h
index eafd63619d..21ae70d13a 100644
--- a/include/grpc++/server_builder.h
+++ b/include/grpc++/server_builder.h
@@ -151,7 +151,8 @@ class ServerBuilder {
/// Add a completion queue for handling asynchronous services.
///
/// Caller is required to shutdown the server prior to shutting down the
- /// returned completion queue. A typical usage scenario:
+ /// returned completion queue. Caller is also required to drain the
+ /// completion queue after shutting it down. A typical usage scenario:
///
/// // While building the server:
/// ServerBuilder builder;
@@ -162,6 +163,10 @@ class ServerBuilder {
/// // While shutting down the server;
/// server_->Shutdown();
/// cq_->Shutdown(); // Always *after* the associated server's Shutdown()!
+ /// // Drain the cq_ that was created
+ /// void* ignored_tag;
+ /// bool ignored_ok;
+ /// while (cq_->Next(&ignored_tag, &ignored_ok)) { }
///
/// \param is_frequently_polled This is an optional parameter to inform gRPC
/// library about whether this completion queue would be frequently polled