Index: base/memory/memory_pressure_listener.cc |
diff --git a/base/memory/memory_pressure_listener.cc b/base/memory/memory_pressure_listener.cc |
index 8071d378ec00a2d4176c60b8d12a87a138f01a58..9fd675aa4e52a0dd679c0d26456da990c31589d3 100644 |
--- a/base/memory/memory_pressure_listener.cc |
+++ b/base/memory/memory_pressure_listener.cc |
@@ -60,8 +60,7 @@ void MemoryPressureListener::NotifyMemoryPressure( |
"level", memory_pressure_level); |
if (AreNotificationsSuppressed()) |
return; |
- g_observers.Get().Notify(FROM_HERE, &MemoryPressureListener::Notify, |
- memory_pressure_level); |
+ DoNotifyMemoryPressure(memory_pressure_level); |
} |
// static |
@@ -74,4 +73,19 @@ void MemoryPressureListener::SetNotificationsSuppressed(bool suppress) { |
subtle::Release_Store(&g_notifications_suppressed, suppress ? 1 : 0); |
} |
+// static |
+void MemoryPressureListener::SimulatePressureNotification( |
+ MemoryPressureLevel memory_pressure_level) { |
+ // Notify all listeners even if regular pressure notifications are suppressed. |
+ DoNotifyMemoryPressure(memory_pressure_level); |
+} |
+ |
+// static |
+void MemoryPressureListener::DoNotifyMemoryPressure( |
+ MemoryPressureLevel memory_pressure_level) { |
+ DCHECK_NE(memory_pressure_level, MEMORY_PRESSURE_LEVEL_NONE); |
+ g_observers.Get().Notify(FROM_HERE, &MemoryPressureListener::Notify, |
+ memory_pressure_level); |
+} |
+ |
} // namespace base |