New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 710063 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: May 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Simplify API surface in WebKit/public/platform/scheduler

Project Member Reported by altimin@chromium.org, Apr 10 2017

Issue description

Due to historical movements of the blink scheduler between blink and components public APIs exposed from blink scheduler to content/ is obscure, ugly and hard to read and maintain. Refactor it.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Apr 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c7369bf0679442fa79338ab4502ef836b2244c03

commit c7369bf0679442fa79338ab4502ef836b2244c03
Author: altimin <altimin@chromium.org>
Date: Tue Apr 11 14:29:15 2017

[scheduler] Remove webthread_impl_for_worker_scheduler from public API.

As a first step of simplification of public/platform/scheduler, do not
expose WebThreadImplForWorkerScheduler to content/ and use
WebThreadBase::Create{Worker,Compositor}Thread instead.

R=skyostil@chromium.org,alexclarke@chromium.org,kinuko@chromium.org
BUG= 710063 

Review-Url: https://codereview.chromium.org/2810883002
Cr-Commit-Position: refs/heads/master@{#463620}

[modify] https://crrev.com/c7369bf0679442fa79338ab4502ef836b2244c03/content/child/blink_platform_impl.cc
[modify] https://crrev.com/c7369bf0679442fa79338ab4502ef836b2244c03/content/renderer/render_thread_impl.cc
[modify] https://crrev.com/c7369bf0679442fa79338ab4502ef836b2244c03/third_party/WebKit/Source/platform/scheduler/child/webthread_base.cc
[modify] https://crrev.com/c7369bf0679442fa79338ab4502ef836b2244c03/third_party/WebKit/Source/platform/scheduler/child/webthread_impl_for_worker_scheduler.cc
[rename] https://crrev.com/c7369bf0679442fa79338ab4502ef836b2244c03/third_party/WebKit/Source/platform/scheduler/child/webthread_impl_for_worker_scheduler.h
[modify] https://crrev.com/c7369bf0679442fa79338ab4502ef836b2244c03/third_party/WebKit/Source/platform/scheduler/child/webthread_impl_for_worker_scheduler_unittest.cc
[modify] https://crrev.com/c7369bf0679442fa79338ab4502ef836b2244c03/third_party/WebKit/Source/platform/scheduler/renderer/webthread_impl_for_renderer_scheduler.cc
[modify] https://crrev.com/c7369bf0679442fa79338ab4502ef836b2244c03/third_party/WebKit/Source/platform/scheduler/renderer/webthread_impl_for_renderer_scheduler.h
[modify] https://crrev.com/c7369bf0679442fa79338ab4502ef836b2244c03/third_party/WebKit/Source/platform/scheduler/utility/webthread_impl_for_utility_thread.cc
[modify] https://crrev.com/c7369bf0679442fa79338ab4502ef836b2244c03/third_party/WebKit/public/platform/scheduler/child/webthread_base.h
[modify] https://crrev.com/c7369bf0679442fa79338ab4502ef836b2244c03/third_party/WebKit/public/platform/scheduler/renderer/renderer_scheduler.h
[modify] https://crrev.com/c7369bf0679442fa79338ab4502ef836b2244c03/third_party/WebKit/public/platform/scheduler/utility/webthread_impl_for_utility_thread.h

Project Member

Comment 2 by bugdroid1@chromium.org, Apr 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2f6fcaddddc44428751293335cebdda838e5eab7

commit 2f6fcaddddc44428751293335cebdda838e5eab7
Author: altimin <altimin@chromium.org>
Date: Wed Apr 12 09:27:55 2017

[scheduler] Remove WorkerScheduler from public API.

As a part of the effort to simplify blink scheduler public API surface,
move WorkerScheduler inside blink given that content does not use it.

R=alexclarke@chromium.org,skyostil@chromium.org,jochen@chromium.org
CC=nhiroki@chromium.org
BUG= 710063 

Review-Url: https://codereview.chromium.org/2807243003
Cr-Commit-Position: refs/heads/master@{#463975}

[modify] https://crrev.com/2f6fcaddddc44428751293335cebdda838e5eab7/content/renderer/render_thread_impl.cc
[modify] https://crrev.com/2f6fcaddddc44428751293335cebdda838e5eab7/third_party/WebKit/Source/platform/scheduler/child/compositor_worker_scheduler.cc
[rename] https://crrev.com/2f6fcaddddc44428751293335cebdda838e5eab7/third_party/WebKit/Source/platform/scheduler/child/compositor_worker_scheduler.h
[modify] https://crrev.com/2f6fcaddddc44428751293335cebdda838e5eab7/third_party/WebKit/Source/platform/scheduler/child/web_scheduler_impl.cc
[modify] https://crrev.com/2f6fcaddddc44428751293335cebdda838e5eab7/third_party/WebKit/Source/platform/scheduler/child/webthread_base.cc
[modify] https://crrev.com/2f6fcaddddc44428751293335cebdda838e5eab7/third_party/WebKit/Source/platform/scheduler/child/worker_scheduler.cc
[rename] https://crrev.com/2f6fcaddddc44428751293335cebdda838e5eab7/third_party/WebKit/Source/platform/scheduler/child/worker_scheduler.h
[modify] https://crrev.com/2f6fcaddddc44428751293335cebdda838e5eab7/third_party/WebKit/Source/platform/scheduler/child/worker_scheduler_impl.h

Project Member

Comment 3 by bugdroid1@chromium.org, Apr 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/35bc21693b8bc098b2f20e4f797dbd20c9011104

commit 35bc21693b8bc098b2f20e4f797dbd20c9011104
Author: altimin <altimin@chromium.org>
Date: Wed Apr 12 12:20:11 2017

[scheduler] Remove WebThreadImplForUtilityThread from public API.

As a part of the effort to simplify blink scheduler public API surface,
move WebThreadImplForUtilityThread inside blink and make content use
WebThreadBase::InitializeUtilityThread to get an object.

R=skyostil@chromium.org,alexclarke@chromium.org
BUG= 710063 

Review-Url: https://codereview.chromium.org/2812063002
Cr-Commit-Position: refs/heads/master@{#464001}

[modify] https://crrev.com/35bc21693b8bc098b2f20e4f797dbd20c9011104/content/utility/utility_blink_platform_impl.cc
[modify] https://crrev.com/35bc21693b8bc098b2f20e4f797dbd20c9011104/content/utility/utility_blink_platform_impl.h
[modify] https://crrev.com/35bc21693b8bc098b2f20e4f797dbd20c9011104/services/data_decoder/image_decoder_impl_unittest.cc
[modify] https://crrev.com/35bc21693b8bc098b2f20e4f797dbd20c9011104/third_party/WebKit/Source/platform/scheduler/child/webthread_base.cc
[modify] https://crrev.com/35bc21693b8bc098b2f20e4f797dbd20c9011104/third_party/WebKit/Source/platform/scheduler/utility/webthread_impl_for_utility_thread.cc
[rename] https://crrev.com/35bc21693b8bc098b2f20e4f797dbd20c9011104/third_party/WebKit/Source/platform/scheduler/utility/webthread_impl_for_utility_thread.h
[modify] https://crrev.com/35bc21693b8bc098b2f20e4f797dbd20c9011104/third_party/WebKit/public/platform/scheduler/child/webthread_base.h

Project Member

Comment 4 by bugdroid1@chromium.org, Apr 20 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/df8804b62d42666ac585a090d745c09462ffe54e

commit df8804b62d42666ac585a090d745c09462ffe54e
Author: altimin <altimin@chromium.org>
Date: Thu Apr 20 21:13:42 2017

[scheduler] Remove blink::scheduler::TaskQueue from public API.

Use base::SingleThreadTaskRunner to expose task runners from
ChildScheduler and RendererScheduler to content.

Rename {Timer}TaskRunner to {Timer}TaskQueue for methods which return
TaskQueue (internal to blink).

R=haraken@chromium.org,skyostil@chromium.org,alexclarke@chromium.org
BUG= 710063 

Review-Url: https://codereview.chromium.org/2812313002
Cr-Commit-Position: refs/heads/master@{#466133}

[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/core/frame/PerformanceMonitor.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/TimerTest.cpp
[rename] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/base/task_queue.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/base/task_queue_manager.cc
[rename] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/base/task_time_observer.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/base/test_task_time_observer.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/compositor_worker_scheduler.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/compositor_worker_scheduler.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/idle_canceled_delayed_task_sweeper_unittest.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/idle_helper.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/idle_helper_unittest.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/scheduler_helper.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/scheduler_helper.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/scheduler_helper_unittest.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/web_scheduler_impl.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/web_task_runner_impl.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/webthread_impl_for_worker_scheduler.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/worker_global_scope_scheduler.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/worker_scheduler.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/worker_scheduler_impl.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/child/worker_scheduler_impl.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/renderer/idle_time_estimator.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl_unittest.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/renderer/renderer_web_scheduler_impl.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler_unittest.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/renderer/web_frame_scheduler_impl.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/renderer/web_frame_scheduler_impl.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/renderer/webthread_impl_for_renderer_scheduler.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/renderer/webthread_impl_for_renderer_scheduler_unittest.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/scheduler/test/fake_renderer_scheduler.cc
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/testing/TestingPlatformSupport.cpp
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/Source/platform/testing/TestingPlatformSupport.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/public/platform/scheduler/child/child_scheduler.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/public/platform/scheduler/renderer/renderer_scheduler.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/public/platform/scheduler/test/fake_renderer_scheduler.h
[modify] https://crrev.com/df8804b62d42666ac585a090d745c09462ffe54e/third_party/WebKit/public/platform/scheduler/test/mock_renderer_scheduler.h

Project Member

Comment 5 by bugdroid1@chromium.org, Apr 26 2017

Project Member

Comment 6 by bugdroid1@chromium.org, Apr 26 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c756f829942e5160b135e337d6408047346aa133

commit c756f829942e5160b135e337d6408047346aa133
Author: altimin <altimin@chromium.org>
Date: Wed Apr 26 14:20:09 2017

[scheduler] Rename member variables from task_runner_ to task_queue_.

Rename *_task_runner_ member variables to *_task_queue_ to match
variable type.

BUG= 710063 

Review-Url: https://codereview.chromium.org/2840873002
Cr-Commit-Position: refs/heads/master@{#467320}

[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/child/idle_canceled_delayed_task_sweeper_unittest.cc
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/child/scheduler_helper.cc
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/child/scheduler_helper.h
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/child/web_scheduler_impl.cc
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/child/web_scheduler_impl.h
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/child/webthread_impl_for_worker_scheduler.cc
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/child/webthread_impl_for_worker_scheduler.h
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/renderer/auto_advancing_virtual_time_domain_unittest.cc
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/renderer/idle_time_estimator.cc
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/renderer/idle_time_estimator.h
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/renderer/idle_time_estimator_unittest.cc
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.h
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.cc
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.h
[modify] https://crrev.com/c756f829942e5160b135e337d6408047346aa133/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler_unittest.cc

Status: Fixed (was: Started)
I'm not planning to do anything in the nearest future on this front. So this is considered done. 

Sign in to add a comment