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

Unified Diff: chrome/browser/prerender/prerender_manager.cc

Issue 11551003: Change multi-prerender API to include per launcher slots. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: guh Created 8 years 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/prerender/prerender_manager.cc
diff --git a/chrome/browser/prerender/prerender_manager.cc b/chrome/browser/prerender/prerender_manager.cc
index ab6c7aa5c08181cffe232bd2f9c047132f159192..f2e0321ea3e5bc726642cf29174c9feb8ad6640f 100644
--- a/chrome/browser/prerender/prerender_manager.cc
+++ b/chrome/browser/prerender/prerender_manager.cc
@@ -99,7 +99,6 @@ const int kHistoryLength = 100;
bool NeedMatchCompleteDummyForFinalStatus(FinalStatus final_status) {
return final_status != FINAL_STATUS_USED &&
final_status != FINAL_STATUS_TIMED_OUT &&
- final_status != FINAL_STATUS_EVICTED &&
final_status != FINAL_STATUS_MANAGER_SHUTDOWN &&
final_status != FINAL_STATUS_APP_TERMINATING &&
final_status != FINAL_STATUS_WINDOW_OPENER &&
@@ -209,7 +208,8 @@ PrerenderManager::PrerenderManager(Profile* profile,
// Certain experiments override our default config_ values.
switch (PrerenderManager::GetMode()) {
case PrerenderManager::PRERENDER_MODE_EXPERIMENT_MULTI_PRERENDER_GROUP:
- config_.max_concurrency = 3;
+ config_.max_concurrency = 4;
+ config_.max_concurrency_per_launcher = 2;
break;
case PrerenderManager::PRERENDER_MODE_EXPERIMENT_15MIN_TTL_GROUP:
config_.time_to_live = base::TimeDelta::FromMinutes(15);
@@ -1046,12 +1046,6 @@ PrerenderHandle* PrerenderManager::AddPrerender(
DCHECK(IsControlGroup(experiment) ||
prerender_contents->prerendering_has_started());
- while (active_prerenders_.size() > config_.max_concurrency) {
- prerender_contents = active_prerenders_.front()->contents();
- DCHECK(prerender_contents);
- prerender_contents->Destroy(FINAL_STATUS_EVICTED);
- }
-
histograms_->RecordConcurrency(active_prerenders_.size(),
config_.max_concurrency);
@@ -1199,7 +1193,7 @@ bool PrerenderManager::DoesRateLimitAllowPrerender(Origin origin) const {
histograms_->RecordTimeBetweenPrerenderRequests(origin, elapsed_time);
if (!config_.rate_limit_enabled)
return true;
- return elapsed_time >
+ return elapsed_time >=
base::TimeDelta::FromMilliseconds(kMinTimeBetweenPrerendersMs);
}

Powered by Google App Engine
This is Rietveld 408576698