Loading native/android/performance_hint.cpp +6 −6 Original line number Diff line number Diff line Loading @@ -184,13 +184,13 @@ int APerformanceHintSession::reportActualWorkDuration(int64_t actualDurationNano mTimestampsNanos.push_back(now); /** * Use current sample to determine the rate limit. We can pick a shorter rate limit * if any sample underperformed, however, it could be the lower level system is slow * to react. So here we explicitly choose the rate limit with the latest sample. * Cache the hint if the hint is not overtime and the mLastUpdateTimestamp is * still in the mPreferredRateNanos duration. */ int64_t rateLimit = actualDurationNanos > mTargetDurationNanos ? mPreferredRateNanos : 10 * mPreferredRateNanos; if (now - mLastUpdateTimestamp <= rateLimit) return 0; if (actualDurationNanos < mTargetDurationNanos && now - mLastUpdateTimestamp <= mPreferredRateNanos) { return 0; } binder::Status ret = mHintSession->reportActualWorkDuration(mActualDurationsNanos, mTimestampsNanos); Loading Loading
native/android/performance_hint.cpp +6 −6 Original line number Diff line number Diff line Loading @@ -184,13 +184,13 @@ int APerformanceHintSession::reportActualWorkDuration(int64_t actualDurationNano mTimestampsNanos.push_back(now); /** * Use current sample to determine the rate limit. We can pick a shorter rate limit * if any sample underperformed, however, it could be the lower level system is slow * to react. So here we explicitly choose the rate limit with the latest sample. * Cache the hint if the hint is not overtime and the mLastUpdateTimestamp is * still in the mPreferredRateNanos duration. */ int64_t rateLimit = actualDurationNanos > mTargetDurationNanos ? mPreferredRateNanos : 10 * mPreferredRateNanos; if (now - mLastUpdateTimestamp <= rateLimit) return 0; if (actualDurationNanos < mTargetDurationNanos && now - mLastUpdateTimestamp <= mPreferredRateNanos) { return 0; } binder::Status ret = mHintSession->reportActualWorkDuration(mActualDurationsNanos, mTimestampsNanos); Loading