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

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

Issue 8229039: Make shared memory allocation possible for all child process types. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 2 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 | Annotate | Revision Log
« no previous file with comments | « content/renderer/pepper_plugin_delegate_impl.cc ('k') | content/renderer/renderer_glue.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 <vector> 10 #include <vector>
11 11
12 #include "base/command_line.h" 12 #include "base/command_line.h"
13 #include "base/debug/trace_event.h" 13 #include "base/debug/trace_event.h"
14 #include "base/lazy_instance.h" 14 #include "base/lazy_instance.h"
15 #include "base/logging.h" 15 #include "base/logging.h"
16 #include "base/metrics/field_trial.h" 16 #include "base/metrics/field_trial.h"
17 #include "base/metrics/histogram.h" 17 #include "base/metrics/histogram.h"
18 #include "base/metrics/stats_table.h" 18 #include "base/metrics/stats_table.h"
19 #include "base/process_util.h" 19 #include "base/process_util.h"
20 #include "base/shared_memory.h" 20 #include "base/shared_memory.h"
21 #include "base/task.h" 21 #include "base/task.h"
22 #include "base/threading/thread_local.h" 22 #include "base/threading/thread_local.h"
23 #include "base/values.h" 23 #include "base/values.h"
24 #include "content/common/appcache/appcache_dispatcher.h" 24 #include "content/common/appcache/appcache_dispatcher.h"
25 #include "content/common/child_process_messages.h"
25 #include "content/common/database_messages.h" 26 #include "content/common/database_messages.h"
26 #include "content/common/db_message_filter.h" 27 #include "content/common/db_message_filter.h"
27 #include "content/common/dom_storage_messages.h" 28 #include "content/common/dom_storage_messages.h"
28 #include "content/common/gpu/gpu_messages.h" 29 #include "content/common/gpu/gpu_messages.h"
29 #include "content/common/npobject_util.h" 30 #include "content/common/npobject_util.h"
30 #include "content/common/plugin_messages.h" 31 #include "content/common/plugin_messages.h"
31 #include "content/common/renderer_preferences.h" 32 #include "content/common/renderer_preferences.h"
32 #include "content/common/resource_dispatcher.h" 33 #include "content/common/resource_dispatcher.h"
33 #include "content/common/resource_messages.h" 34 #include "content/common/resource_messages.h"
34 #include "content/common/view_messages.h" 35 #include "content/common/view_messages.h"
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
66 #include "third_party/WebKit/Source/WebKit/chromium/public/WebScriptController.h " 67 #include "third_party/WebKit/Source/WebKit/chromium/public/WebScriptController.h "
67 #include "third_party/WebKit/Source/WebKit/chromium/public/WebStorageEventDispat cher.h" 68 #include "third_party/WebKit/Source/WebKit/chromium/public/WebStorageEventDispat cher.h"
68 #include "third_party/WebKit/Source/WebKit/chromium/public/WebString.h" 69 #include "third_party/WebKit/Source/WebKit/chromium/public/WebString.h"
69 #include "third_party/WebKit/Source/WebKit/chromium/public/WebView.h" 70 #include "third_party/WebKit/Source/WebKit/chromium/public/WebView.h"
70 #include "ui/base/ui_base_switches.h" 71 #include "ui/base/ui_base_switches.h"
71 #include "v8/include/v8.h" 72 #include "v8/include/v8.h"
72 #include "webkit/extensions/v8/playback_extension.h" 73 #include "webkit/extensions/v8/playback_extension.h"
73 #include "webkit/glue/webkit_glue.h" 74 #include "webkit/glue/webkit_glue.h"
74 75
75 // TODO(port) 76 // TODO(port)
76 #if defined(OS_WIN) 77 #if !defined(OS_WIN)
77 #include "content/common/child_process_messages.h"
78 #else
79 #include "base/memory/scoped_handle.h" 78 #include "base/memory/scoped_handle.h"
80 #include "content/common/np_channel_base.h" 79 #include "content/common/np_channel_base.h"
81 #endif 80 #endif
82 81
83 #if defined(OS_WIN) 82 #if defined(OS_WIN)
84 #include <windows.h> 83 #include <windows.h>
85 #include <objbase.h> 84 #include <objbase.h>
86 #endif 85 #endif
87 86
88 #if defined(OS_POSIX) 87 #if defined(OS_POSIX)
(...skipping 427 matching lines...) Expand 10 before | Expand all | Expand 10 after
516 WebRuntimeFeatures::enableQuota(true); 515 WebRuntimeFeatures::enableQuota(true);
517 516
518 FOR_EACH_OBSERVER(RenderProcessObserver, observers_, WebKitInitialized()); 517 FOR_EACH_OBSERVER(RenderProcessObserver, observers_, WebKitInitialized());
519 } 518 }
520 519
521 void RenderThreadImpl::RecordUserMetrics(const std::string& action) { 520 void RenderThreadImpl::RecordUserMetrics(const std::string& action) {
522 Send(new ViewHostMsg_UserMetricsRecordAction(action)); 521 Send(new ViewHostMsg_UserMetricsRecordAction(action));
523 } 522 }
524 523
525 base::SharedMemoryHandle RenderThreadImpl::HostAllocateSharedMemoryBuffer( 524 base::SharedMemoryHandle RenderThreadImpl::HostAllocateSharedMemoryBuffer(
526 uint32 buffer_size) { 525 uint32 buffer_size) {
527 base::SharedMemoryHandle mem_handle; 526 base::SharedMemoryHandle mem_handle;
528 Send(new ViewHostMsg_AllocateSharedMemoryBuffer(buffer_size, &mem_handle)); 527 Send(new ChildProcessHostMsg_SyncAllocateSharedMemory(
528 buffer_size, &mem_handle));
529 return mem_handle; 529 return mem_handle;
530 } 530 }
531 531
532 void RenderThreadImpl::RegisterExtension(v8::Extension* extension) { 532 void RenderThreadImpl::RegisterExtension(v8::Extension* extension) {
533 WebScriptController::registerExtension(extension); 533 WebScriptController::registerExtension(extension);
534 v8_extensions_.insert(extension->name()); 534 v8_extensions_.insert(extension->name());
535 } 535 }
536 536
537 bool RenderThreadImpl::IsRegisteredExtension( 537 bool RenderThreadImpl::IsRegisteredExtension(
538 const std::string& v8_extension_name) const { 538 const std::string& v8_extension_name) const {
(...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after
766 766
767 scoped_refptr<base::MessageLoopProxy> 767 scoped_refptr<base::MessageLoopProxy>
768 RenderThreadImpl::GetFileThreadMessageLoopProxy() { 768 RenderThreadImpl::GetFileThreadMessageLoopProxy() {
769 DCHECK(message_loop() == MessageLoop::current()); 769 DCHECK(message_loop() == MessageLoop::current());
770 if (!file_thread_.get()) { 770 if (!file_thread_.get()) {
771 file_thread_.reset(new base::Thread("Renderer::FILE")); 771 file_thread_.reset(new base::Thread("Renderer::FILE"));
772 file_thread_->Start(); 772 file_thread_->Start();
773 } 773 }
774 return file_thread_->message_loop_proxy(); 774 return file_thread_->message_loop_proxy();
775 } 775 }
OLDNEW
« no previous file with comments | « content/renderer/pepper_plugin_delegate_impl.cc ('k') | content/renderer/renderer_glue.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698