From 6f9c01fb583a35e85e3f94bcac850ae49cb88033 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20M=C3=B6ller?= Date: Wed, 10 Jan 2018 15:55:05 +0100 Subject: [PATCH] Delete use of pthread_cond_timedwait_relative_np. This appears to be a deprecated android function (available only for __ANDROID_API__ < 21), and it's been reported to cause performance problems on certain android devices (see bug for details). Bug: webrtc:8722 Change-Id: I7ef4b6f98c4910246007ce1e262884c84b5f0efa Reviewed-on: https://webrtc-review.googlesource.com/38700 Commit-Queue: Niels Moller Reviewed-by: Karl Wiberg Cr-Commit-Position: refs/heads/master@{#21572} --- rtc_base/event.cc | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/rtc_base/event.cc b/rtc_base/event.cc index 32c1b0334e..ff4faadd67 100644 --- a/rtc_base/event.cc +++ b/rtc_base/event.cc @@ -85,12 +85,6 @@ bool Event::Wait(int milliseconds) { // Converting from seconds and microseconds (1e-6) plus // milliseconds (1e-3) to seconds and nanoseconds (1e-9). -#ifdef HAVE_PTHREAD_COND_TIMEDWAIT_RELATIVE - // Use relative time version, which tends to be more efficient for - // pthread implementations where provided (like on Android). - ts.tv_sec = milliseconds / 1000; - ts.tv_nsec = (milliseconds % 1000) * 1000000; -#else struct timeval tv; gettimeofday(&tv, nullptr); @@ -102,18 +96,12 @@ bool Event::Wait(int milliseconds) { ts.tv_sec++; ts.tv_nsec -= 1000000000; } -#endif } pthread_mutex_lock(&event_mutex_); if (milliseconds != kForever) { while (!event_status_ && error == 0) { -#ifdef HAVE_PTHREAD_COND_TIMEDWAIT_RELATIVE - error = pthread_cond_timedwait_relative_np( - &event_cond_, &event_mutex_, &ts); -#else error = pthread_cond_timedwait(&event_cond_, &event_mutex_, &ts); -#endif } } else { while (!event_status_ && error == 0)