aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/cpp/common
diff options
context:
space:
mode:
authorGravatar vjpai <vpai@google.com>2015-03-16 23:58:44 -0700
committerGravatar vjpai <vpai@google.com>2015-03-17 00:39:18 -0700
commit7aadf46fdb05b5f595440c41998023e69e1700e5 (patch)
tree549b9c05238f155657f4cf3d87bfbdd7c45d682b /src/cpp/common
parentc41bf3cb5a497ee2a6ab9a9b959587a4e56328ed (diff)
Change to std::chrono and add a test.
Diffstat (limited to 'src/cpp/common')
-rw-r--r--src/cpp/common/completion_queue.cc9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/cpp/common/completion_queue.cc b/src/cpp/common/completion_queue.cc
index 2913298afe..fede2da016 100644
--- a/src/cpp/common/completion_queue.cc
+++ b/src/cpp/common/completion_queue.cc
@@ -57,12 +57,15 @@ class EventDeleter {
}
};
-CompletionQueue::NextStatus CompletionQueue::AsyncNext(void** tag, bool* ok,
- gpr_timespec deadline) {
+CompletionQueue::NextStatus
+CompletionQueue::AsyncNext(void** tag, bool* ok,
+ std::chrono::system_clock::time_point deadline) {
std::unique_ptr<grpc_event, EventDeleter> ev;
+ gpr_timespec gpr_deadline;
+ Timepoint2Timespec(deadline, &gpr_deadline);
for (;;) {
- ev.reset(grpc_completion_queue_next(cq_, deadline));
+ ev.reset(grpc_completion_queue_next(cq_, gpr_deadline));
if (!ev) { /* got a NULL back because deadline passed */
return TIMEOUT;
}