Chromium Code Reviews

Unified Diff: components/scheduler/renderer/renderer_scheduler_impl.cc

Issue 1914143002: Experimental 'purging and suspending' backgrounded tabs behind the flag (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add is_cache_purged_ to avoid redundant purging Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Index: components/scheduler/renderer/renderer_scheduler_impl.cc
diff --git a/components/scheduler/renderer/renderer_scheduler_impl.cc b/components/scheduler/renderer/renderer_scheduler_impl.cc
index 3ae7991381cf6b59f152c4dbce6d4b3b2a3a95e5..dcee76a62920766fe3f86024aa828938d36e790e 100644
--- a/components/scheduler/renderer/renderer_scheduler_impl.cc
+++ b/components/scheduler/renderer/renderer_scheduler_impl.cc
@@ -387,6 +387,14 @@ void RendererSchedulerImpl::OnRendererForegrounded() {
ResumeTimerQueueWhenForegrounded();
}
+void RendererSchedulerImpl::SuspendRendererWhenBackgrounded() {
+ helper_.CheckOnValidThread();
+ if (helper_.IsShutdown() || !MainThreadOnly().renderer_backgrounded)
+ return;
+ suspend_timers_when_backgrounded_closure_.Cancel();
+ SuspendTimerQueueWhenBackgrounded();
+}
+
void RendererSchedulerImpl::EndIdlePeriod() {
if (MainThreadOnly().in_idle_period_for_testing)
return;

Powered by Google App Engine