summaryrefslogtreecommitdiffstats
path: root/base/memory/discardable_memory_manager.cc
diff options
context:
space:
mode:
authorreveman@chromium.org <reveman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-11 00:04:18 +0000
committerreveman@chromium.org <reveman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-11 00:04:18 +0000
commitb45f8a74831de9e3a0e8a97fddb583201cd2c3aa (patch)
tree86d7b286e93bc1635af626aab351e1f903de35d5 /base/memory/discardable_memory_manager.cc
parent5079b2b9cbbb991e0ea8a714470e78db30dae627 (diff)
downloadchromium_src-b45f8a74831de9e3a0e8a97fddb583201cd2c3aa.zip
chromium_src-b45f8a74831de9e3a0e8a97fddb583201cd2c3aa.tar.gz
chromium_src-b45f8a74831de9e3a0e8a97fddb583201cd2c3aa.tar.bz2
base: Use DiscardableMemoryManager on MacOSX.
This limits the address space used for discardable memory on MacOSX by using the DiscardableMemoryManager for userspace eviction. Includes some minor refactoring to keep all code using DiscardableMemoryManager consistent. BUG=369246 Review URL: https://codereview.chromium.org/261993003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269640 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/memory/discardable_memory_manager.cc')
-rw-r--r--base/memory/discardable_memory_manager.cc16
1 files changed, 5 insertions, 11 deletions
diff --git a/base/memory/discardable_memory_manager.cc b/base/memory/discardable_memory_manager.cc
index 468690b..3e90d22 100644
--- a/base/memory/discardable_memory_manager.cc
+++ b/base/memory/discardable_memory_manager.cc
@@ -12,21 +12,15 @@
namespace base {
namespace internal {
-namespace {
-// This is admittedly pretty magical. It's approximately enough memory for eight
-// 2560x1600 images.
-static const size_t kDefaultMemoryLimit = 128 * 1024 * 1024;
-static const size_t kDefaultBytesToKeepUnderModeratePressure = 12 * 1024 * 1024;
-
-} // namespace
-
-DiscardableMemoryManager::DiscardableMemoryManager()
+DiscardableMemoryManager::DiscardableMemoryManager(
+ size_t memory_limit,
+ size_t bytes_to_keep_under_moderate_pressure)
: allocations_(AllocationMap::NO_AUTO_EVICT),
bytes_allocated_(0),
- memory_limit_(kDefaultMemoryLimit),
+ memory_limit_(memory_limit),
bytes_to_keep_under_moderate_pressure_(
- kDefaultBytesToKeepUnderModeratePressure) {
+ bytes_to_keep_under_moderate_pressure) {
BytesAllocatedChanged();
}