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

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

Issue 196103006: Add V8 heap statistics in a time-line manner in tracing. (Closed) Base URL: /home/dmikurube/repos/chromium@work-sai-json
Patch Set: rebased Created 6 years, 5 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 #ifndef CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ 5 #ifndef CONTENT_RENDERER_RENDER_THREAD_IMPL_H_
6 #define CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ 6 #define CONTENT_RENDERER_RENDER_THREAD_IMPL_H_
7 7
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
90 class InputHandlerManager; 90 class InputHandlerManager;
91 class MediaStreamCenter; 91 class MediaStreamCenter;
92 class PeerConnectionDependencyFactory; 92 class PeerConnectionDependencyFactory;
93 class MidiMessageFilter; 93 class MidiMessageFilter;
94 class NetInfoDispatcher; 94 class NetInfoDispatcher;
95 class P2PSocketDispatcher; 95 class P2PSocketDispatcher;
96 class PeerConnectionTracker; 96 class PeerConnectionTracker;
97 class RendererDemuxerAndroid; 97 class RendererDemuxerAndroid;
98 class RendererWebKitPlatformSupportImpl; 98 class RendererWebKitPlatformSupportImpl;
99 class RenderProcessObserver; 99 class RenderProcessObserver;
100 class V8HeapStatisticsMonitor;
100 class VideoCaptureImplManager; 101 class VideoCaptureImplManager;
101 class WebGraphicsContext3DCommandBufferImpl; 102 class WebGraphicsContext3DCommandBufferImpl;
102 class WebRTCIdentityService; 103 class WebRTCIdentityService;
103 104
104 // The RenderThreadImpl class represents a background thread where RenderView 105 // The RenderThreadImpl class represents a background thread where RenderView
105 // instances live. The RenderThread supports an API that is used by its 106 // instances live. The RenderThread supports an API that is used by its
106 // consumer to talk indirectly to the RenderViews and supporting objects. 107 // consumer to talk indirectly to the RenderViews and supporting objects.
107 // Likewise, it provides an API for the RenderViews to talk back to the main 108 // Likewise, it provides an API for the RenderViews to talk back to the main
108 // process (i.e., their corresponding WebContentsImpl). 109 // process (i.e., their corresponding WebContentsImpl).
109 // 110 //
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
191 } 192 }
192 void set_layout_test_mode(bool layout_test_mode) { 193 void set_layout_test_mode(bool layout_test_mode) {
193 layout_test_mode_ = layout_test_mode; 194 layout_test_mode_ = layout_test_mode;
194 } 195 }
195 196
196 RendererWebKitPlatformSupportImpl* webkit_platform_support() const { 197 RendererWebKitPlatformSupportImpl* webkit_platform_support() const {
197 DCHECK(webkit_platform_support_); 198 DCHECK(webkit_platform_support_);
198 return webkit_platform_support_.get(); 199 return webkit_platform_support_.get();
199 } 200 }
200 201
202 V8HeapStatisticsMonitor* v8_heap_statistics_monitor() {
203 return v8_heap_statistics_monitor_.get();
204 }
205
201 IPC::ForwardingMessageFilter* compositor_output_surface_filter() const { 206 IPC::ForwardingMessageFilter* compositor_output_surface_filter() const {
202 return compositor_output_surface_filter_.get(); 207 return compositor_output_surface_filter_.get();
203 } 208 }
204 209
205 InputHandlerManager* input_handler_manager() const { 210 InputHandlerManager* input_handler_manager() const {
206 return input_handler_manager_.get(); 211 return input_handler_manager_.get();
207 } 212 }
208 213
209 // Will be NULL if threaded compositing has not been enabled. 214 // Will be NULL if threaded compositing has not been enabled.
210 scoped_refptr<base::MessageLoopProxy> compositor_message_loop_proxy() const { 215 scoped_refptr<base::MessageLoopProxy> compositor_message_loop_proxy() const {
(...skipping 299 matching lines...) Expand 10 before | Expand all | Expand 10 after
510 // The number of idle handler calls that skip sending idle notifications. 515 // The number of idle handler calls that skip sending idle notifications.
511 int idle_notifications_to_skip_; 516 int idle_notifications_to_skip_;
512 517
513 bool suspend_webkit_shared_timer_; 518 bool suspend_webkit_shared_timer_;
514 bool notify_webkit_of_modal_loop_; 519 bool notify_webkit_of_modal_loop_;
515 bool webkit_shared_timer_suspended_; 520 bool webkit_shared_timer_suspended_;
516 521
517 // The following flag is used to control layout test specific behavior. 522 // The following flag is used to control layout test specific behavior.
518 bool layout_test_mode_; 523 bool layout_test_mode_;
519 524
525 scoped_ptr<V8HeapStatisticsMonitor> v8_heap_statistics_monitor_;
526
520 // Timer that periodically calls IdleHandler. 527 // Timer that periodically calls IdleHandler.
521 base::RepeatingTimer<RenderThreadImpl> idle_timer_; 528 base::RepeatingTimer<RenderThreadImpl> idle_timer_;
522 529
523 // The channel from the renderer process to the GPU process. 530 // The channel from the renderer process to the GPU process.
524 scoped_refptr<GpuChannelHost> gpu_channel_; 531 scoped_refptr<GpuChannelHost> gpu_channel_;
525 532
526 // Cache of variables that are needed on the compositor thread by 533 // Cache of variables that are needed on the compositor thread by
527 // GpuChannelHostFactory methods. 534 // GpuChannelHostFactory methods.
528 scoped_refptr<base::MessageLoopProxy> io_message_loop_proxy_; 535 scoped_refptr<base::MessageLoopProxy> io_message_loop_proxy_;
529 536
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
578 bool is_one_copy_enabled_; 585 bool is_one_copy_enabled_;
579 586
580 std::map<int, mojo::MessagePipeHandle> pending_render_frame_connects_; 587 std::map<int, mojo::MessagePipeHandle> pending_render_frame_connects_;
581 588
582 DISALLOW_COPY_AND_ASSIGN(RenderThreadImpl); 589 DISALLOW_COPY_AND_ASSIGN(RenderThreadImpl);
583 }; 590 };
584 591
585 } // namespace content 592 } // namespace content
586 593
587 #endif // CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ 594 #endif // CONTENT_RENDERER_RENDER_THREAD_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698