Chromium Code Reviews| 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 "chrome/browser/prerender/prerender_manager.h" | 5 #include "chrome/browser/prerender/prerender_manager.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <functional> | 8 #include <functional> |
| 9 #include <string> | 9 #include <string> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 1515 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1526 return active_prerenders_.end(); | 1526 return active_prerenders_.end(); |
| 1527 } | 1527 } |
| 1528 | 1528 |
| 1529 bool PrerenderManager::DoesRateLimitAllowPrerender(Origin origin) const { | 1529 bool PrerenderManager::DoesRateLimitAllowPrerender(Origin origin) const { |
| 1530 DCHECK(CalledOnValidThread()); | 1530 DCHECK(CalledOnValidThread()); |
| 1531 base::TimeDelta elapsed_time = | 1531 base::TimeDelta elapsed_time = |
| 1532 GetCurrentTimeTicks() - last_prerender_start_time_; | 1532 GetCurrentTimeTicks() - last_prerender_start_time_; |
| 1533 histograms_->RecordTimeBetweenPrerenderRequests(origin, elapsed_time); | 1533 histograms_->RecordTimeBetweenPrerenderRequests(origin, elapsed_time); |
| 1534 if (!config_.rate_limit_enabled) | 1534 if (!config_.rate_limit_enabled) |
| 1535 return true; | 1535 return true; |
| 1536 if (origin == ORIGIN_LOCAL_PREDICTOR) | |
|
davidben
2014/06/19 19:33:34
Nit: Add a comment that ORIGIN_LOCAL_PREDICTOR may
tburkard
2014/06/19 20:01:49
Done.
| |
| 1537 return true; | |
| 1536 return elapsed_time >= | 1538 return elapsed_time >= |
| 1537 base::TimeDelta::FromMilliseconds(kMinTimeBetweenPrerendersMs); | 1539 base::TimeDelta::FromMilliseconds(kMinTimeBetweenPrerendersMs); |
| 1538 } | 1540 } |
| 1539 | 1541 |
| 1540 void PrerenderManager::DeleteOldWebContents() { | 1542 void PrerenderManager::DeleteOldWebContents() { |
| 1541 while (!old_web_contents_list_.empty()) { | 1543 while (!old_web_contents_list_.empty()) { |
| 1542 WebContents* web_contents = old_web_contents_list_.front(); | 1544 WebContents* web_contents = old_web_contents_list_.front(); |
| 1543 old_web_contents_list_.pop_front(); | 1545 old_web_contents_list_.pop_front(); |
| 1544 // TODO(dominich): should we use Instant Unload Handler here? | 1546 // TODO(dominich): should we use Instant Unload Handler here? |
| 1545 delete web_contents; | 1547 delete web_contents; |
| (...skipping 366 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1912 content::RenderProcessHost* host) { | 1914 content::RenderProcessHost* host) { |
| 1913 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 1915 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| 1914 prerender_process_hosts_.erase(host); | 1916 prerender_process_hosts_.erase(host); |
| 1915 BrowserThread::PostTask( | 1917 BrowserThread::PostTask( |
| 1916 BrowserThread::IO, FROM_HERE, | 1918 BrowserThread::IO, FROM_HERE, |
| 1917 base::Bind(&PrerenderTracker::RemovePrerenderCookieStoreOnIOThread, | 1919 base::Bind(&PrerenderTracker::RemovePrerenderCookieStoreOnIOThread, |
| 1918 base::Unretained(prerender_tracker()), host->GetID(), false)); | 1920 base::Unretained(prerender_tracker()), host->GetID(), false)); |
| 1919 } | 1921 } |
| 1920 | 1922 |
| 1921 } // namespace prerender | 1923 } // namespace prerender |
| OLD | NEW |