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,13 +531,14 @@ RenderThreadImpl::RenderThreadImpl(
const InProcessChildThreadParams& params,
int32_t client_id,
std::unique_ptr<blink::scheduler::WebThreadScheduler> scheduler)
: ChildThreadImpl(base::DoNothing(),
Options::Builder()
.InBrowserProcess(params)
.ConnectToBrowser(true)
.IPCTaskRunner(scheduler->IPCTaskRunner())
.ExposesInterfacesToBrowser()
.Build()),
: ChildThreadImpl(
base::DoNothing(),
Options::Builder()
.InBrowserProcess(params)
.ConnectToBrowser(true)
.IPCTaskRunner(scheduler->DeprecatedDefaultTaskRunner())
.ExposesInterfacesToBrowser()
.Build()),
main_thread_scheduler_(std::move(scheduler)),
categorized_worker_pool_(new CategorizedWorkerPool()),
client_id_(client_id) {
......@@ -561,12 +562,13 @@ int32_t GetClientIdFromCommandLine() {
RenderThreadImpl::RenderThreadImpl(
base::RepeatingClosure quit_closure,
std::unique_ptr<blink::scheduler::WebThreadScheduler> scheduler)
: ChildThreadImpl(std::move(quit_closure),
Options::Builder()
.ConnectToBrowser(true)
.IPCTaskRunner(scheduler->IPCTaskRunner())
.ExposesInterfacesToBrowser()
.Build()),
: ChildThreadImpl(
std::move(quit_closure),
Options::Builder()
.ConnectToBrowser(true)
.IPCTaskRunner(scheduler->DeprecatedDefaultTaskRunner())
.ExposesInterfacesToBrowser()
.Build()),
main_thread_scheduler_(std::move(scheduler)),
categorized_worker_pool_(new CategorizedWorkerPool()),
client_id_(GetClientIdFromCommandLine()) {
......@@ -2181,8 +2183,9 @@ void RenderThreadImpl::OnSyncMemoryPressure(
void RenderThreadImpl::OnRendererInterfaceReceiver(
mojo::PendingAssociatedReceiver<mojom::Renderer> receiver) {
DCHECK(!renderer_receiver_.is_bound());
renderer_receiver_.Bind(std::move(receiver),
GetWebMainThreadScheduler()->IPCTaskRunner());
renderer_receiver_.Bind(
std::move(receiver),
GetWebMainThreadScheduler()->DeprecatedDefaultTaskRunner());
}
bool RenderThreadImpl::NeedsToRecordFirstActivePaint(
......
......@@ -27,6 +27,8 @@ class WebMockThreadScheduler : public WebThreadScheduler {
MOCK_METHOD0(DefaultTaskRunner,
scoped_refptr<base::SingleThreadTaskRunner>());
MOCK_METHOD0(DeprecatedDefaultTaskRunner,
scoped_refptr<base::SingleThreadTaskRunner>());
MOCK_METHOD0(CompositorTaskRunner,
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