Commit f7ff8bd5 authored by Minoru Chikamune's avatar Minoru Chikamune Committed by Commit Bot

[MBI] Remove IPCTaskRunner usage on RenderThreadImpl

We are going to remove ipc_task_queue and ipc_task_runner. The scheduling policy of ipc_task_queue is the same as the default task queue. Nowadays, we are using per-frame task queues as much as possible. And if there are no relevant per-frame task queues, then we can use the (per-isolate) default task queues.

[related design doc section]
https://docs.google.com/document/d/1y-vHkrD1z2RtyWYwT6rJkSLHClYNjDDpUbTtBU7l95A/edit#bookmark=id.eeuir8g768ou

Bug: 1105403
Change-Id: I034961b5d320a3a43b93bcbeabbcb495e72a20e5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2332089Reviewed-by: default avatarAlexander Timin <altimin@chromium.org>
Reviewed-by: default avatarKentaro Hara <haraken@chromium.org>
Reviewed-by: default avatarTal Pressman <talp@chromium.org>
Reviewed-by: default avatarKouhei Ueno <kouhei@chromium.org>
Commit-Queue: Minoru Chikamune <chikamune@chromium.org>
Cr-Commit-Position: refs/heads/master@{#794828}
parent 36ac40a5
...@@ -531,11 +531,12 @@ RenderThreadImpl::RenderThreadImpl( ...@@ -531,11 +531,12 @@ RenderThreadImpl::RenderThreadImpl(
const InProcessChildThreadParams& params, const InProcessChildThreadParams& params,
int32_t client_id, int32_t client_id,
std::unique_ptr<blink::scheduler::WebThreadScheduler> scheduler) std::unique_ptr<blink::scheduler::WebThreadScheduler> scheduler)
: ChildThreadImpl(base::DoNothing(), : ChildThreadImpl(
base::DoNothing(),
Options::Builder() Options::Builder()
.InBrowserProcess(params) .InBrowserProcess(params)
.ConnectToBrowser(true) .ConnectToBrowser(true)
.IPCTaskRunner(scheduler->IPCTaskRunner()) .IPCTaskRunner(scheduler->DeprecatedDefaultTaskRunner())
.ExposesInterfacesToBrowser() .ExposesInterfacesToBrowser()
.Build()), .Build()),
main_thread_scheduler_(std::move(scheduler)), main_thread_scheduler_(std::move(scheduler)),
...@@ -561,10 +562,11 @@ int32_t GetClientIdFromCommandLine() { ...@@ -561,10 +562,11 @@ int32_t GetClientIdFromCommandLine() {
RenderThreadImpl::RenderThreadImpl( RenderThreadImpl::RenderThreadImpl(
base::RepeatingClosure quit_closure, base::RepeatingClosure quit_closure,
std::unique_ptr<blink::scheduler::WebThreadScheduler> scheduler) std::unique_ptr<blink::scheduler::WebThreadScheduler> scheduler)
: ChildThreadImpl(std::move(quit_closure), : ChildThreadImpl(
std::move(quit_closure),
Options::Builder() Options::Builder()
.ConnectToBrowser(true) .ConnectToBrowser(true)
.IPCTaskRunner(scheduler->IPCTaskRunner()) .IPCTaskRunner(scheduler->DeprecatedDefaultTaskRunner())
.ExposesInterfacesToBrowser() .ExposesInterfacesToBrowser()
.Build()), .Build()),
main_thread_scheduler_(std::move(scheduler)), main_thread_scheduler_(std::move(scheduler)),
...@@ -2181,8 +2183,9 @@ void RenderThreadImpl::OnSyncMemoryPressure( ...@@ -2181,8 +2183,9 @@ void RenderThreadImpl::OnSyncMemoryPressure(
void RenderThreadImpl::OnRendererInterfaceReceiver( void RenderThreadImpl::OnRendererInterfaceReceiver(
mojo::PendingAssociatedReceiver<mojom::Renderer> receiver) { mojo::PendingAssociatedReceiver<mojom::Renderer> receiver) {
DCHECK(!renderer_receiver_.is_bound()); DCHECK(!renderer_receiver_.is_bound());
renderer_receiver_.Bind(std::move(receiver), renderer_receiver_.Bind(
GetWebMainThreadScheduler()->IPCTaskRunner()); std::move(receiver),
GetWebMainThreadScheduler()->DeprecatedDefaultTaskRunner());
} }
bool RenderThreadImpl::NeedsToRecordFirstActivePaint( bool RenderThreadImpl::NeedsToRecordFirstActivePaint(
......
...@@ -27,6 +27,8 @@ class WebMockThreadScheduler : public WebThreadScheduler { ...@@ -27,6 +27,8 @@ class WebMockThreadScheduler : public WebThreadScheduler {
MOCK_METHOD0(DefaultTaskRunner, MOCK_METHOD0(DefaultTaskRunner,
scoped_refptr<base::SingleThreadTaskRunner>()); scoped_refptr<base::SingleThreadTaskRunner>());
MOCK_METHOD0(DeprecatedDefaultTaskRunner,
scoped_refptr<base::SingleThreadTaskRunner>());
MOCK_METHOD0(CompositorTaskRunner, MOCK_METHOD0(CompositorTaskRunner,
scoped_refptr<base::SingleThreadTaskRunner>()); scoped_refptr<base::SingleThreadTaskRunner>());
MOCK_METHOD0(InputTaskRunner, scoped_refptr<base::SingleThreadTaskRunner>()); MOCK_METHOD0(InputTaskRunner, scoped_refptr<base::SingleThreadTaskRunner>());
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment