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

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

Issue 2334533002: base: Move renderer threads to the appropriate cpuset. (Closed)
Patch Set: Created 4 years, 3 months 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 837 matching lines...) Expand 10 before | Expand all | Expand 10 after
848 848
849 GetContentClient()->renderer()->ExposeInterfacesToBrowser( 849 GetContentClient()->renderer()->ExposeInterfacesToBrowser(
850 GetInterfaceRegistry()); 850 GetInterfaceRegistry());
851 851
852 GetInterfaceRegistry()->AddInterface(base::Bind(CreateFrameFactory)); 852 GetInterfaceRegistry()->AddInterface(base::Bind(CreateFrameFactory));
853 GetInterfaceRegistry()->AddInterface(base::Bind(CreateEmbeddedWorkerSetup)); 853 GetInterfaceRegistry()->AddInterface(base::Bind(CreateEmbeddedWorkerSetup));
854 854
855 GetRemoteInterfaces()->GetInterface( 855 GetRemoteInterfaces()->GetInterface(
856 mojo::GetProxy(&storage_partition_service_)); 856 mojo::GetProxy(&storage_partition_service_));
857 857
858 ChildProcess::current()->SetIOThreadAffinity(base::ThreadPriority::DISPLAY);
859 ChildThreadImpl::current()->SetThreadAffinity(
860 categorized_worker_pool_->background_worker_thread_id(),
861 base::ThreadPriority::BACKGROUND);
862
858 is_renderer_suspended_ = false; 863 is_renderer_suspended_ = false;
859 } 864 }
860 865
861 RenderThreadImpl::~RenderThreadImpl() { 866 RenderThreadImpl::~RenderThreadImpl() {
862 } 867 }
863 868
864 void RenderThreadImpl::Shutdown() { 869 void RenderThreadImpl::Shutdown() {
865 FOR_EACH_OBSERVER( 870 FOR_EACH_OBSERVER(
866 RenderThreadObserver, observers_, OnRenderProcessShutdown()); 871 RenderThreadObserver, observers_, OnRenderProcessShutdown());
867 872
(...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after
1124 base::Thread::Options options; 1129 base::Thread::Options options;
1125 #if defined(OS_ANDROID) 1130 #if defined(OS_ANDROID)
1126 options.priority = base::ThreadPriority::DISPLAY; 1131 options.priority = base::ThreadPriority::DISPLAY;
1127 #endif 1132 #endif
1128 compositor_thread_.reset(new WebThreadForCompositor(options)); 1133 compositor_thread_.reset(new WebThreadForCompositor(options));
1129 blink_platform_impl_->SetCompositorThread(compositor_thread_.get()); 1134 blink_platform_impl_->SetCompositorThread(compositor_thread_.get());
1130 compositor_task_runner_ = compositor_thread_->GetTaskRunner(); 1135 compositor_task_runner_ = compositor_thread_->GetTaskRunner();
1131 compositor_task_runner_->PostTask( 1136 compositor_task_runner_->PostTask(
1132 FROM_HERE, 1137 FROM_HERE,
1133 base::Bind(base::IgnoreResult(&ThreadRestrictions::SetIOAllowed), false)); 1138 base::Bind(base::IgnoreResult(&ThreadRestrictions::SetIOAllowed), false));
1139 ChildThreadImpl::current()->SetThreadAffinity(compositor_thread_->threadId(),
1140 base::ThreadPriority::DISPLAY);
1134 1141
1135 SynchronousInputHandlerProxyClient* synchronous_input_handler_proxy_client = 1142 SynchronousInputHandlerProxyClient* synchronous_input_handler_proxy_client =
1136 nullptr; 1143 nullptr;
1137 #if defined(OS_ANDROID) 1144 #if defined(OS_ANDROID)
1138 if (GetContentClient()->UsingSynchronousCompositing()) { 1145 if (GetContentClient()->UsingSynchronousCompositing()) {
1139 sync_compositor_message_filter_ = 1146 sync_compositor_message_filter_ =
1140 new SynchronousCompositorFilter(compositor_task_runner_); 1147 new SynchronousCompositorFilter(compositor_task_runner_);
1141 AddFilter(sync_compositor_message_filter_.get()); 1148 AddFilter(sync_compositor_message_filter_.get());
1142 synchronous_input_handler_proxy_client = 1149 synchronous_input_handler_proxy_client =
1143 sync_compositor_message_filter_.get(); 1150 sync_compositor_message_filter_.get();
(...skipping 1101 matching lines...) Expand 10 before | Expand all | Expand 10 after
2245 if (blink::mainThreadIsolate()) { 2252 if (blink::mainThreadIsolate()) {
2246 blink::mainThreadIsolate()->MemoryPressureNotification( 2253 blink::mainThreadIsolate()->MemoryPressureNotification(
2247 v8::MemoryPressureLevel::kCritical); 2254 v8::MemoryPressureLevel::kCritical);
2248 blink::MemoryPressureNotificationToWorkerThreadIsolates( 2255 blink::MemoryPressureNotificationToWorkerThreadIsolates(
2249 v8::MemoryPressureLevel::kCritical); 2256 v8::MemoryPressureLevel::kCritical);
2250 } 2257 }
2251 } 2258 }
2252 2259
2253 2260
2254 } // namespace content 2261 } // namespace content
OLDNEW
« base/threading/platform_thread_linux.cc ('K') | « content/renderer/categorized_worker_pool.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698