Merge "Fix lock contention in AppOpsService" into sc-dev

This commit is contained in:
Evan Severson
2021-04-12 16:54:37 +00:00
committed by Android (Google) Code Review

View File

@@ -385,11 +385,10 @@ final class HistoricalRegistry {
callback.sendResult(new Bundle());
return;
}
mPersistence.collectHistoricalOpsDLocked(result, uid, packageName,
attributionTag,
opNames, filter, beginTimeMillis, endTimeMillis, flags);
}
mPersistence.collectHistoricalOpsDLocked(result, uid, packageName,
attributionTag,
opNames, filter, beginTimeMillis, endTimeMillis, flags);
}
}
@@ -577,19 +576,19 @@ final class HistoricalRegistry {
Slog.e(LOG_TAG, "Interaction before persistence initialized");
return;
}
final List<HistoricalOps> history = mPersistence.readHistoryDLocked();
clearHistoricalRegistry();
if (history != null) {
final int historySize = history.size();
for (int i = 0; i < historySize; i++) {
final HistoricalOps ops = history.get(i);
ops.offsetBeginAndEndTime(offsetMillis);
}
if (offsetMillis < 0) {
pruneFutureOps(history);
}
mPersistence.persistHistoricalOpsDLocked(history);
}
final List<HistoricalOps> history = mPersistence.readHistoryDLocked();
clearHistoricalRegistry();
if (history != null) {
final int historySize = history.size();
for (int i = 0; i < historySize; i++) {
final HistoricalOps ops = history.get(i);
ops.offsetBeginAndEndTime(offsetMillis);
}
if (offsetMillis < 0) {
pruneFutureOps(history);
}
mPersistence.persistHistoricalOpsDLocked(history);
}
}
}