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/memory/tab_manager.h" | 5 #include "chrome/browser/memory/tab_manager.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <algorithm> | 9 #include <algorithm> |
10 #include <set> | 10 #include <set> |
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
132 base::MemoryPressureListener::MemoryPressureLevel level) { | 132 base::MemoryPressureListener::MemoryPressureLevel level) { |
133 content::MemoryPressureController::SendPressureNotification( | 133 content::MemoryPressureController::SendPressureNotification( |
134 render_process_host, level); | 134 render_process_host, level); |
135 } | 135 } |
136 | 136 |
137 } // namespace | 137 } // namespace |
138 | 138 |
139 //////////////////////////////////////////////////////////////////////////////// | 139 //////////////////////////////////////////////////////////////////////////////// |
140 // TabManager | 140 // TabManager |
141 | 141 |
142 constexpr base::TimeDelta TabManager::kDefaultTimeToFirstPurge; | |
143 | |
142 TabManager::TabManager() | 144 TabManager::TabManager() |
143 : discard_count_(0), | 145 : discard_count_(0), |
144 recent_tab_discard_(false), | 146 recent_tab_discard_(false), |
145 discard_once_(false), | 147 discard_once_(false), |
146 #if !defined(OS_CHROMEOS) | 148 #if !defined(OS_CHROMEOS) |
147 minimum_protection_time_(base::TimeDelta::FromMinutes(10)), | 149 minimum_protection_time_(base::TimeDelta::FromMinutes(10)), |
148 #endif | 150 #endif |
149 browser_tab_strip_tracker_(this, nullptr, nullptr), | 151 browser_tab_strip_tracker_(this, nullptr, nullptr), |
150 test_tick_clock_(nullptr), | 152 test_tick_clock_(nullptr), |
151 under_memory_pressure_(false), | 153 under_memory_pressure_(false), |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
219 if (level == base::MemoryPressureListener::MEMORY_PRESSURE_LEVEL_CRITICAL) { | 221 if (level == base::MemoryPressureListener::MEMORY_PRESSURE_LEVEL_CRITICAL) { |
220 OnMemoryPressure(level); | 222 OnMemoryPressure(level); |
221 } | 223 } |
222 } | 224 } |
223 #endif | 225 #endif |
224 // purge-and-suspend param is used for Purge+Suspend finch experiment | 226 // purge-and-suspend param is used for Purge+Suspend finch experiment |
225 // in the following way: | 227 // in the following way: |
226 // https://docs.google.com/document/d/1hPHkKtXXBTlsZx9s-9U17XC-ofEIzPo9FYbBEc7 PPbk/edit?usp=sharing | 228 // https://docs.google.com/document/d/1hPHkKtXXBTlsZx9s-9U17XC-ofEIzPo9FYbBEc7 PPbk/edit?usp=sharing |
227 std::string purge_and_suspend_time = variations::GetVariationParamValue( | 229 std::string purge_and_suspend_time = variations::GetVariationParamValue( |
228 "PurgeAndSuspend", "purge-and-suspend-time"); | 230 "PurgeAndSuspend", "purge-and-suspend-time"); |
229 unsigned time_to_first_suspension_sec; | 231 unsigned time_to_first_purge_sec; |
Wez
2017/02/22 17:57:55
nit: Even though this is about to be set by String
tasak
2017/02/23 02:37:54
Done.
| |
230 if (purge_and_suspend_time.empty() || | 232 if (purge_and_suspend_time.empty() || |
231 !base::StringToUint(purge_and_suspend_time, | 233 !base::StringToUint(purge_and_suspend_time, &time_to_first_purge_sec)) |
232 &time_to_first_suspension_sec)) | 234 time_to_first_suspension_ = kDefaultTimeToFirstPurge; |
233 time_to_first_suspension_sec = 108000; | 235 else |
234 time_to_first_suspension_ = | 236 time_to_first_suspension_ = |
235 base::TimeDelta::FromSeconds(time_to_first_suspension_sec); | 237 base::TimeDelta::FromSeconds(time_to_first_purge_sec); |
236 } | 238 } |
237 | 239 |
238 void TabManager::Stop() { | 240 void TabManager::Stop() { |
239 update_timer_.Stop(); | 241 update_timer_.Stop(); |
240 recent_tab_discard_timer_.Stop(); | 242 recent_tab_discard_timer_.Stop(); |
241 memory_pressure_listener_.reset(); | 243 memory_pressure_listener_.reset(); |
242 } | 244 } |
243 | 245 |
244 TabStatsList TabManager::GetTabStats() const { | 246 TabStatsList TabManager::GetTabStats() const { |
245 TabStatsList stats_list(GetUnsortedTabStats()); | 247 TabStatsList stats_list(GetUnsortedTabStats()); |
(...skipping 784 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1030 // platform. | 1032 // platform. |
1031 std::string allow_multiple_discards = variations::GetVariationParamValue( | 1033 std::string allow_multiple_discards = variations::GetVariationParamValue( |
1032 features::kAutomaticTabDiscarding.name, "AllowMultipleDiscards"); | 1034 features::kAutomaticTabDiscarding.name, "AllowMultipleDiscards"); |
1033 return (allow_multiple_discards != "true"); | 1035 return (allow_multiple_discards != "true"); |
1034 #else | 1036 #else |
1035 return false; | 1037 return false; |
1036 #endif | 1038 #endif |
1037 } | 1039 } |
1038 | 1040 |
1039 } // namespace memory | 1041 } // namespace memory |
OLD | NEW |