Merge "Disallow long regular jobs in Doze and battery saver." into sc-dev
This commit is contained in:
@@ -753,13 +753,22 @@ class JobConcurrencyManager {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// We're over the minimum guaranteed runtime. Stop the job if we're over config limits,
|
||||||
|
// there are pending jobs that could replace this one, or the device state is not conducive
|
||||||
|
// to long runs.
|
||||||
|
|
||||||
|
if (mPowerManager.isPowerSaveMode()) {
|
||||||
|
return "battery saver";
|
||||||
|
}
|
||||||
|
if (mPowerManager.isDeviceIdleMode()) {
|
||||||
|
return "deep doze";
|
||||||
|
}
|
||||||
|
|
||||||
// Update config in case memory usage has changed significantly.
|
// Update config in case memory usage has changed significantly.
|
||||||
updateCounterConfigLocked();
|
updateCounterConfigLocked();
|
||||||
|
|
||||||
@WorkType final int workType = context.getRunningJobWorkType();
|
@WorkType final int workType = context.getRunningJobWorkType();
|
||||||
|
|
||||||
// We're over the minimum guaranteed runtime. Stop the job if we're over config limits or
|
|
||||||
// there are pending jobs that could replace this one.
|
|
||||||
if (mRunningJobs.size() > mWorkTypeConfig.getMaxTotal()
|
if (mRunningJobs.size() > mWorkTypeConfig.getMaxTotal()
|
||||||
|| mWorkCountTracker.isOverTypeLimit(workType)) {
|
|| mWorkCountTracker.isOverTypeLimit(workType)) {
|
||||||
return "too many jobs running";
|
return "too many jobs running";
|
||||||
@@ -786,13 +795,6 @@ class JobConcurrencyManager {
|
|||||||
return "blocking " + workTypeToString(workType) + " queue";
|
return "blocking " + workTypeToString(workType) + " queue";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mPowerManager.isPowerSaveMode()) {
|
|
||||||
return "battery saver";
|
|
||||||
}
|
|
||||||
if (mPowerManager.isDeviceIdleMode()) {
|
|
||||||
return "deep doze";
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Easy check. If there are pending jobs of the same work type, then we know that
|
// Easy check. If there are pending jobs of the same work type, then we know that
|
||||||
|
|||||||
Reference in New Issue
Block a user