Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(183)

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

Issue 1151353003: [scheduler]: Avoid waking up the scheduler to end long idle periods. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@end_idle_sync_2
Patch Set: Fix Win for realz hopefully... Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/scheduler/renderer/renderer_scheduler_impl.h
diff --git a/components/scheduler/renderer/renderer_scheduler_impl.h b/components/scheduler/renderer/renderer_scheduler_impl.h
index 57ff24d48af5478dd15b38b0cf37318b404abd04..cfe38597ad39873185f4754f2f7ba763fb72df7e 100644
--- a/components/scheduler/renderer/renderer_scheduler_impl.h
+++ b/components/scheduler/renderer/renderer_scheduler_impl.h
@@ -8,6 +8,7 @@
#include "base/atomicops.h"
#include "base/synchronization/lock.h"
#include "components/scheduler/child/idle_helper.h"
+#include "components/scheduler/child/pollable_thread_safe_flag.h"
#include "components/scheduler/child/scheduler_helper.h"
#include "components/scheduler/renderer/deadline_task_runner.h"
#include "components/scheduler/renderer/renderer_scheduler.h"
@@ -91,24 +92,6 @@ class SCHEDULER_EXPORT RendererSchedulerImpl : public RendererScheduler,
FIRST_INPUT_STREAM_STATE = INACTIVE,
};
- class PollableNeedsUpdateFlag {
- public:
- PollableNeedsUpdateFlag(base::Lock* write_lock);
- ~PollableNeedsUpdateFlag();
-
- // Set the flag. May only be called if |write_lock| is held.
- void SetWhileLocked(bool value);
-
- // Returns true iff the flag is set to true.
- bool IsSet() const;
-
- private:
- base::subtle::Atomic32 flag_;
- base::Lock* write_lock_; // Not owned.
-
- DISALLOW_COPY_AND_ASSIGN(PollableNeedsUpdateFlag);
- };
-
// IdleHelper::Delegate implementation:
bool CanEnterLongIdlePeriod(
base::TimeTicks now,
@@ -212,7 +195,7 @@ class SCHEDULER_EXPORT RendererSchedulerImpl : public RendererScheduler,
base::TimeTicks last_input_process_time_on_main_;
blink::WebInputEvent::Type last_input_type_;
InputStreamState input_stream_state_;
- PollableNeedsUpdateFlag policy_may_need_update_;
+ PollableThreadSafeFlag policy_may_need_update_;
int timer_queue_suspend_count_; // TIMER_TASK_QUEUE suspended if non-zero.
base::WeakPtrFactory<RendererSchedulerImpl> weak_factory_;
« no previous file with comments | « components/scheduler/child/worker_scheduler_impl_unittest.cc ('k') | components/scheduler/renderer/renderer_scheduler_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698