diff options
author | changbin.shao@intel.com <changbin.shao@intel.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-04 14:06:59 +0000 |
---|---|---|
committer | changbin.shao@intel.com <changbin.shao@intel.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-04 14:06:59 +0000 |
commit | 0e7ee58b0ffa0e94e0bfe421b39376922f15b14f (patch) | |
tree | e8ef643823be570bb3fbbec387ff20e0d4ae184d /content/browser/renderer_host | |
parent | 12397ca6cf1c2bf26d98462c1ff906399fbee822 (diff) | |
download | chromium_src-0e7ee58b0ffa0e94e0bfe421b39376922f15b14f.zip chromium_src-0e7ee58b0ffa0e94e0bfe421b39376922f15b14f.tar.gz chromium_src-0e7ee58b0ffa0e94e0bfe421b39376922f15b14f.tar.bz2 |
Limit the rate to send media log events over IPC.
Some media events e.g. BufferedExtentsChanged update quite often, this causes heavy IPC traffic for CPU. In the meantime, chrome://media-internals doesn't need to update data in such a high frequency. Use array to send these events every 1 second.
BUG=235096
Review URL: https://chromiumcodereview.appspot.com/14146018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@198314 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/renderer_host')
-rw-r--r-- | content/browser/renderer_host/render_message_filter.cc | 7 | ||||
-rw-r--r-- | content/browser/renderer_host/render_message_filter.h | 2 |
2 files changed, 5 insertions, 4 deletions
diff --git a/content/browser/renderer_host/render_message_filter.cc b/content/browser/renderer_host/render_message_filter.cc index fb42c12..9bea24c 100644 --- a/content/browser/renderer_host/render_message_filter.cc +++ b/content/browser/renderer_host/render_message_filter.cc @@ -414,7 +414,7 @@ bool RenderMessageFilter::OnMessageReceived(const IPC::Message& message, OnGetAudioHardwareConfig) IPC_MESSAGE_HANDLER(ViewHostMsg_GetMonitorColorProfile, OnGetMonitorColorProfile) - IPC_MESSAGE_HANDLER(ViewHostMsg_MediaLogEvent, OnMediaLogEvent) + IPC_MESSAGE_HANDLER(ViewHostMsg_MediaLogEvents, OnMediaLogEvents) IPC_MESSAGE_HANDLER(ViewHostMsg_Are3DAPIsBlocked, OnAre3DAPIsBlocked) IPC_MESSAGE_HANDLER(ViewHostMsg_DidLose3DContext, OnDidLose3DContext) #if defined(OS_ANDROID) @@ -1013,9 +1013,10 @@ void RenderMessageFilter::AsyncOpenFileOnFileThread(const base::FilePath& path, base::Bind(base::IgnoreResult(&RenderMessageFilter::Send), this, reply)); } -void RenderMessageFilter::OnMediaLogEvent(const media::MediaLogEvent& event) { +void RenderMessageFilter::OnMediaLogEvents( + const std::vector<media::MediaLogEvent>& events) { if (media_internals_) - media_internals_->OnMediaEvent(render_process_id_, event); + media_internals_->OnMediaEvents(render_process_id_, events); } void RenderMessageFilter::CheckPolicyForCookies( diff --git a/content/browser/renderer_host/render_message_filter.h b/content/browser/renderer_host/render_message_filter.h index 8541446..fb45016 100644 --- a/content/browser/renderer_host/render_message_filter.h +++ b/content/browser/renderer_host/render_message_filter.h @@ -231,7 +231,7 @@ class RenderMessageFilter : public BrowserMessageFilter { int flags, int message_id, int routing_id); - void OnMediaLogEvent(const media::MediaLogEvent&); + void OnMediaLogEvents(const std::vector<media::MediaLogEvent>&); // Check the policy for getting cookies. Gets the cookies if allowed. void CheckPolicyForCookies(const GURL& url, |