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

Side by Side Diff: content/renderer/render_thread_impl.cc

Issue 2485623002: discardable_memory: Using mojo IPC to replace Chrome IPC (Closed)
Patch Set: Rebase Created 4 years, 1 month 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #include "content/renderer/render_thread_impl.h" 5 #include "content/renderer/render_thread_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <limits> 8 #include <limits>
9 #include <map> 9 #include <map>
10 #include <utility> 10 #include <utility>
(...skipping 581 matching lines...) Expand 10 before | Expand all | Expand 10 after
592 // In single-process mode used for debugging, we don't pass a renderer client 592 // In single-process mode used for debugging, we don't pass a renderer client
593 // ID via command line because RenderThreadImpl lives in the same process as 593 // ID via command line because RenderThreadImpl lives in the same process as
594 // the browser 594 // the browser
595 RenderThreadImpl::RenderThreadImpl( 595 RenderThreadImpl::RenderThreadImpl(
596 const InProcessChildThreadParams& params, 596 const InProcessChildThreadParams& params,
597 std::unique_ptr<blink::scheduler::RendererScheduler> scheduler, 597 std::unique_ptr<blink::scheduler::RendererScheduler> scheduler,
598 scoped_refptr<base::SingleThreadTaskRunner>& resource_task_queue) 598 scoped_refptr<base::SingleThreadTaskRunner>& resource_task_queue)
599 : ChildThreadImpl(Options::Builder() 599 : ChildThreadImpl(Options::Builder()
600 .InBrowserProcess(params) 600 .InBrowserProcess(params)
601 .AutoStartServiceManagerConnection(false) 601 .AutoStartServiceManagerConnection(false)
602 .InitDiscardableMemory(true)
602 .ConnectToBrowser(true) 603 .ConnectToBrowser(true)
603 .Build()), 604 .Build()),
604 renderer_scheduler_(std::move(scheduler)), 605 renderer_scheduler_(std::move(scheduler)),
605 categorized_worker_pool_(new CategorizedWorkerPool()), 606 categorized_worker_pool_(new CategorizedWorkerPool()),
606 renderer_binding_(this), 607 renderer_binding_(this),
607 client_id_(1) { 608 client_id_(1) {
608 Init(resource_task_queue); 609 Init(resource_task_queue);
609 } 610 }
610 611
611 // When we run plugins in process, we actually run them on the render thread, 612 // When we run plugins in process, we actually run them on the render thread,
612 // which means that we need to make the render thread pump UI events. 613 // which means that we need to make the render thread pump UI events.
613 RenderThreadImpl::RenderThreadImpl( 614 RenderThreadImpl::RenderThreadImpl(
614 std::unique_ptr<base::MessageLoop> main_message_loop, 615 std::unique_ptr<base::MessageLoop> main_message_loop,
615 std::unique_ptr<blink::scheduler::RendererScheduler> scheduler) 616 std::unique_ptr<blink::scheduler::RendererScheduler> scheduler)
616 : ChildThreadImpl(Options::Builder() 617 : ChildThreadImpl(Options::Builder()
617 .AutoStartServiceManagerConnection(false) 618 .AutoStartServiceManagerConnection(false)
618 .ConnectToBrowser(true) 619 .ConnectToBrowser(true)
620 .InitDiscardableMemory(true)
619 .Build()), 621 .Build()),
620 renderer_scheduler_(std::move(scheduler)), 622 renderer_scheduler_(std::move(scheduler)),
621 main_message_loop_(std::move(main_message_loop)), 623 main_message_loop_(std::move(main_message_loop)),
622 categorized_worker_pool_(new CategorizedWorkerPool()), 624 categorized_worker_pool_(new CategorizedWorkerPool()),
623 renderer_binding_(this) { 625 renderer_binding_(this) {
624 scoped_refptr<base::SingleThreadTaskRunner> test_task_counter; 626 scoped_refptr<base::SingleThreadTaskRunner> test_task_counter;
625 DCHECK(base::CommandLine::ForCurrentProcess()->HasSwitch( 627 DCHECK(base::CommandLine::ForCurrentProcess()->HasSwitch(
626 switches::kRendererClientId)); 628 switches::kRendererClientId));
627 base::StringToInt(base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII( 629 base::StringToInt(base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
628 switches::kRendererClientId), 630 switches::kRendererClientId),
(...skipping 1856 matching lines...) Expand 10 before | Expand all | Expand 10 after
2485 } 2487 }
2486 } 2488 }
2487 2489
2488 void RenderThreadImpl::OnRendererInterfaceRequest( 2490 void RenderThreadImpl::OnRendererInterfaceRequest(
2489 mojom::RendererAssociatedRequest request) { 2491 mojom::RendererAssociatedRequest request) {
2490 DCHECK(!renderer_binding_.is_bound()); 2492 DCHECK(!renderer_binding_.is_bound());
2491 renderer_binding_.Bind(std::move(request)); 2493 renderer_binding_.Bind(std::move(request));
2492 } 2494 }
2493 2495
2494 } // namespace content 2496 } // namespace content
OLDNEW
« content/ppapi_plugin/ppapi_thread.cc ('K') | « content/public/app/mojo/content_browser_manifest.json ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698