Index: components/memory_pressure/direct_memory_pressure_calculator.h |
diff --git a/components/memory_pressure/direct_memory_pressure_calculator.h b/components/memory_pressure/direct_memory_pressure_calculator.h |
index a2bb60e46a98b470e9a5ecbbd0effebbf9a4cd2e..44258a84dfc02e8d1f2e348021c81bf079383eed 100644 |
--- a/components/memory_pressure/direct_memory_pressure_calculator.h |
+++ b/components/memory_pressure/direct_memory_pressure_calculator.h |
@@ -5,75 +5,8 @@ |
#ifndef COMPONENTS_MEMORY_PRESSURE_DIRECT_MEMORY_PRESSURE_CALCULATOR_H_ |
#define COMPONENTS_MEMORY_PRESSURE_DIRECT_MEMORY_PRESSURE_CALCULATOR_H_ |
-#include "components/memory_pressure/memory_pressure_calculator.h" |
- |
-#include "base/macros.h" |
-#include "base/process/process_metrics.h" |
-#include "build/build_config.h" |
- |
-namespace memory_pressure { |
- |
-#if defined(MEMORY_PRESSURE_IS_POLLING) |
- |
-// OS-specific implementation of MemoryPressureCalculator. This is only defined |
-// and used on platforms that do not have native memory pressure signals |
-// (ChromeOS, Linux, Windows). OSes that do have native signals simply hook into |
-// the appropriate subsystem (Android, Mac OS X). |
-class DirectMemoryPressureCalculator : public MemoryPressureCalculator { |
- public: |
-#if defined(OS_WIN) |
- // Exposed for unittesting. See .cc file for detailed discussion of these |
- // constants. |
- static const int kLargeMemoryThresholdMb; |
- static const int kSmallMemoryDefaultModerateThresholdMb; |
- static const int kSmallMemoryDefaultCriticalThresholdMb; |
- static const int kLargeMemoryDefaultModerateThresholdMb; |
- static const int kLargeMemoryDefaultCriticalThresholdMb; |
-#endif |
- |
- // Default constructor. Will choose thresholds automatically based on the |
- // actual amount of system memory installed. |
- DirectMemoryPressureCalculator(); |
- |
- // Constructor with explicit memory thresholds. These represent the amount of |
- // free memory below which the applicable memory pressure state applies. |
- DirectMemoryPressureCalculator(int moderate_threshold_mb, |
- int critical_threshold_mb); |
- |
- ~DirectMemoryPressureCalculator() override {} |
- |
- // Calculates the current pressure level. |
- MemoryPressureLevel CalculateCurrentPressureLevel() override; |
- |
-#if defined(OS_WIN) |
- int moderate_threshold_mb() const { return moderate_threshold_mb_; } |
- int critical_threshold_mb() const { return critical_threshold_mb_; } |
-#endif |
- |
- private: |
- friend class TestDirectMemoryPressureCalculator; |
- |
- // Gets system memory status. This is virtual as a unittesting hook and by |
- // default this invokes base::GetSystemMemoryInfo. |
- virtual bool GetSystemMemoryInfo(base::SystemMemoryInfoKB* mem_info) const; |
- |
-#if defined(OS_WIN) |
- // Uses GetSystemMemoryInfo to automatically infer appropriate values for |
- // moderate_threshold_mb_ and critical_threshold_mb_. |
- void InferThresholds(); |
- |
- // Threshold amounts of available memory that trigger pressure levels. See |
- // memory_pressure_monitor_win.cc for a discussion of reasonable values for |
- // these. |
- int moderate_threshold_mb_; |
- int critical_threshold_mb_; |
-#endif |
- |
- DISALLOW_COPY_AND_ASSIGN(DirectMemoryPressureCalculator); |
-}; |
- |
-#endif // defined(MEMORY_PRESSURE_IS_POLLING) |
- |
-} // namespace memory_pressure |
+#ifdef OS_WIN |
+#include "components/memory_pressure/direct_memory_pressure_calculator_win.h" |
+#endif // OS_WIN |
#endif // COMPONENTS_MEMORY_PRESSURE_DIRECT_MEMORY_PRESSURE_CALCULATOR_H_ |