| 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
|
|
|