OLD | NEW |
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 573 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
584 return lazy_tls.Pointer()->Get(); | 584 return lazy_tls.Pointer()->Get(); |
585 } | 585 } |
586 | 586 |
587 RenderThreadImpl::RenderThreadImpl( | 587 RenderThreadImpl::RenderThreadImpl( |
588 const InProcessChildThreadParams& params, | 588 const InProcessChildThreadParams& params, |
589 std::unique_ptr<scheduler::RendererScheduler> scheduler, | 589 std::unique_ptr<scheduler::RendererScheduler> scheduler, |
590 scoped_refptr<base::SingleThreadTaskRunner>& resource_task_queue) | 590 scoped_refptr<base::SingleThreadTaskRunner>& resource_task_queue) |
591 : ChildThreadImpl(Options::Builder() | 591 : ChildThreadImpl(Options::Builder() |
592 .InBrowserProcess(params) | 592 .InBrowserProcess(params) |
593 .UseMojoChannel(true) | 593 .UseMojoChannel(true) |
| 594 .UseMojoShellConnection(true) |
594 .Build()), | 595 .Build()), |
595 renderer_scheduler_(std::move(scheduler)), | 596 renderer_scheduler_(std::move(scheduler)), |
596 categorized_worker_pool_(new CategorizedWorkerPool()) { | 597 categorized_worker_pool_(new CategorizedWorkerPool()) { |
597 Init(resource_task_queue); | 598 Init(resource_task_queue); |
598 } | 599 } |
599 | 600 |
600 // When we run plugins in process, we actually run them on the render thread, | 601 // When we run plugins in process, we actually run them on the render thread, |
601 // which means that we need to make the render thread pump UI events. | 602 // which means that we need to make the render thread pump UI events. |
602 RenderThreadImpl::RenderThreadImpl( | 603 RenderThreadImpl::RenderThreadImpl( |
603 std::unique_ptr<base::MessageLoop> main_message_loop, | 604 std::unique_ptr<base::MessageLoop> main_message_loop, |
604 std::unique_ptr<scheduler::RendererScheduler> scheduler) | 605 std::unique_ptr<scheduler::RendererScheduler> scheduler) |
605 : ChildThreadImpl(Options::Builder().UseMojoChannel(true).Build()), | 606 : ChildThreadImpl(Options::Builder().UseMojoChannel(true). |
| 607 UseMojoShellConnection(true).Build()), |
606 renderer_scheduler_(std::move(scheduler)), | 608 renderer_scheduler_(std::move(scheduler)), |
607 main_message_loop_(std::move(main_message_loop)), | 609 main_message_loop_(std::move(main_message_loop)), |
608 categorized_worker_pool_(new CategorizedWorkerPool()) { | 610 categorized_worker_pool_(new CategorizedWorkerPool()) { |
609 scoped_refptr<base::SingleThreadTaskRunner> test_task_counter; | 611 scoped_refptr<base::SingleThreadTaskRunner> test_task_counter; |
610 Init(test_task_counter); | 612 Init(test_task_counter); |
611 } | 613 } |
612 | 614 |
613 void RenderThreadImpl::Init( | 615 void RenderThreadImpl::Init( |
614 scoped_refptr<base::SingleThreadTaskRunner>& resource_task_queue) { | 616 scoped_refptr<base::SingleThreadTaskRunner>& resource_task_queue) { |
615 TRACE_EVENT0("startup", "RenderThreadImpl::Init"); | 617 TRACE_EVENT0("startup", "RenderThreadImpl::Init"); |
(...skipping 1591 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2207 v8_memory_pressure_level == v8::MemoryPressureLevel::kCritical) | 2209 v8_memory_pressure_level == v8::MemoryPressureLevel::kCritical) |
2208 v8_memory_pressure_level = v8::MemoryPressureLevel::kModerate; | 2210 v8_memory_pressure_level = v8::MemoryPressureLevel::kModerate; |
2209 | 2211 |
2210 blink::mainThreadIsolate()->MemoryPressureNotification( | 2212 blink::mainThreadIsolate()->MemoryPressureNotification( |
2211 v8_memory_pressure_level); | 2213 v8_memory_pressure_level); |
2212 blink::MemoryPressureNotificationToWorkerThreadIsolates( | 2214 blink::MemoryPressureNotificationToWorkerThreadIsolates( |
2213 v8_memory_pressure_level); | 2215 v8_memory_pressure_level); |
2214 } | 2216 } |
2215 | 2217 |
2216 } // namespace content | 2218 } // namespace content |
OLD | NEW |