Hello
What is the difference between method's
bool CompletionQueue::Next(void** tag, bool* ok)
return value and 2nd parameter's value?
Reading docs, it says:
/// \param ok[out] true if read a regular event, false otherwise.
/// \return true if read a regular event, false if the queue is shutting
down
Following the example:
while (true) {
// Block waiting to read the next event from the completion queue. The
// event is uniquely identified by its tag, which in this case is the
// memory address of a CallData instance.
// The return value of Next should always be checked. This return value
// tells us whether there is any kind of event or cq_ is shutting down.
GPR_ASSERT(cq_->Next(&tag, &ok));
GPR_ASSERT(ok);
static_cast<CallData*>(tag)->Proceed();
}
it breaks whether the return value or ok parameter is false.
But in the production environment maybe I can break the loop when the queue
is shutting down (based on return value) and continue when ok parameter's
value is false?
What is the most preferable approach? Should I consider both of them as the
same and break on false as in the example?
--
regards
Przemysław Sobala
--
You received this message because you are subscribed to the Google Groups
"grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/grpc-io.
To view this discussion on the web visit
https://groups.google.com/d/msgid/grpc-io/8c3a44c4-8498-4230-80a2-91003446942f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.