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

Side by Side Diff: third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.h

Issue 2653643002: Move has_incoming_immediate_work to the TaskQueueManager (Closed)
Patch Set: Don't try to be quite so clever in TaskQueueManager::ComputeDelayTillNextTask Created 3 years, 10 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 unified diff | Download patch
« no previous file with comments | « no previous file | third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef THIRD_PARTY_WEBKIT_SOURCE_PLATFORM_SCHEDULER_BASE_TASK_QUEUE_IMPL_H_ 5 #ifndef THIRD_PARTY_WEBKIT_SOURCE_PLATFORM_SCHEDULER_BASE_TASK_QUEUE_IMPL_H_
6 #define THIRD_PARTY_WEBKIT_SOURCE_PLATFORM_SCHEDULER_BASE_TASK_QUEUE_IMPL_H_ 6 #define THIRD_PARTY_WEBKIT_SOURCE_PLATFORM_SCHEDULER_BASE_TASK_QUEUE_IMPL_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 9
10 #include <memory> 10 #include <memory>
(...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after
291 const tracked_objects::Location& posted_from, 291 const tracked_objects::Location& posted_from,
292 const base::Closure& task, 292 const base::Closure& task,
293 base::TimeTicks desired_run_time, 293 base::TimeTicks desired_run_time,
294 EnqueueOrder sequence_number, 294 EnqueueOrder sequence_number,
295 bool nestable); 295 bool nestable);
296 296
297 // Extracts all the tasks from the immediate incoming queue and clears it. 297 // Extracts all the tasks from the immediate incoming queue and clears it.
298 // Can be called from any thread. 298 // Can be called from any thread.
299 WTF::Deque<TaskQueueImpl::Task> TakeImmediateIncomingQueue(); 299 WTF::Deque<TaskQueueImpl::Task> TakeImmediateIncomingQueue();
300 300
301 // As BlockedByFence but safe to be called while locked.
302 bool BlockedByFenceLocked() const;
303
304 void TraceQueueSize(bool is_locked) const; 301 void TraceQueueSize(bool is_locked) const;
305 static void QueueAsValueInto(const WTF::Deque<Task>& queue, 302 static void QueueAsValueInto(const WTF::Deque<Task>& queue,
306 base::trace_event::TracedValue* state); 303 base::trace_event::TracedValue* state);
307 static void QueueAsValueInto(const std::priority_queue<Task>& queue, 304 static void QueueAsValueInto(const std::priority_queue<Task>& queue,
308 base::trace_event::TracedValue* state); 305 base::trace_event::TracedValue* state);
309 static void TaskAsValueInto(const Task& task, 306 static void TaskAsValueInto(const Task& task,
310 base::trace_event::TracedValue* state); 307 base::trace_event::TracedValue* state);
311 308
312 void RemoveQueueEnabledVoter(const QueueEnabledVoterImpl* voter); 309 void RemoveQueueEnabledVoter(const QueueEnabledVoterImpl* voter);
313 void OnQueueEnabledVoteChanged(bool enabled); 310 void OnQueueEnabledVoteChanged(bool enabled);
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
347 const bool should_report_when_execution_blocked_; 344 const bool should_report_when_execution_blocked_;
348 345
349 DISALLOW_COPY_AND_ASSIGN(TaskQueueImpl); 346 DISALLOW_COPY_AND_ASSIGN(TaskQueueImpl);
350 }; 347 };
351 348
352 } // namespace internal 349 } // namespace internal
353 } // namespace scheduler 350 } // namespace scheduler
354 } // namespace blink 351 } // namespace blink
355 352
356 #endif // THIRD_PARTY_WEBKIT_SOURCE_PLATFORM_SCHEDULER_BASE_TASK_QUEUE_IMPL_H_ 353 #endif // THIRD_PARTY_WEBKIT_SOURCE_PLATFORM_SCHEDULER_BASE_TASK_QUEUE_IMPL_H_
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698