Index: third_party/WebKit/Source/platform/MemoryPurgeController.cpp |
diff --git a/third_party/WebKit/Source/platform/MemoryPurgeController.cpp b/third_party/WebKit/Source/platform/MemoryPurgeController.cpp |
index 2f70de222920b1ca732e20a405fa364554cb1e60..9b7b0e5b8ab24931138d628c71177fc91c374e62 100644 |
--- a/third_party/WebKit/Source/platform/MemoryPurgeController.cpp |
+++ b/third_party/WebKit/Source/platform/MemoryPurgeController.cpp |
@@ -45,7 +45,17 @@ void MemoryPurgeController::pageBecameInactive() |
void MemoryPurgeController::pageInactiveTask(Timer<MemoryPurgeController>*) |
{ |
+ static const size_t maxSizeInKB = 10 * 1024; |
+ |
+ size_t totalSizeBefore = WTF::Partitions::totalSizeOfCommittedPages(); |
purgeMemory(MemoryPurgeMode::InactiveTab); |
+ size_t totalSizeAfter = WTF::Partitions::totalSizeOfCommittedPages(); |
+ if (totalSizeAfter >= totalSizeBefore) |
+ return; |
+ size_t reclaimedInKB = (totalSizeBefore - totalSizeAfter) / 1024; |
+ if (reclaimedInKB >= maxSizeInKB) |
+ reclaimedInKB = maxSizeInKB - 1; |
+ Platform::current()->histogramEnumeration("MemoryPurgeController.ReclaimedPartitionAllocInactiveTab", reclaimedInKB, maxSizeInKB); |
rkaplow
2015/11/18 16:08:00
this isn't the correct histogram method - this sho
bashi
2015/11/19 23:16:36
Done.
|
} |
void MemoryPurgeController::purgeMemory(MemoryPurgeMode purgeMode) |