Merge "Use a single thread executor for calculateHasIncompatibleAccounts" into udc-dev am: 25f954ed8c
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/24150783 Change-Id: Ide94a30619f802abbd1ae113ebe11886b31c76f9 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -241,7 +241,6 @@ import static android.provider.Telephony.Carriers.ENFORCE_KEY;
|
|||||||
import static android.provider.Telephony.Carriers.ENFORCE_MANAGED_URI;
|
import static android.provider.Telephony.Carriers.ENFORCE_MANAGED_URI;
|
||||||
import static android.provider.Telephony.Carriers.INVALID_APN_ID;
|
import static android.provider.Telephony.Carriers.INVALID_APN_ID;
|
||||||
import static android.security.keystore.AttestationUtils.USE_INDIVIDUAL_ATTESTATION;
|
import static android.security.keystore.AttestationUtils.USE_INDIVIDUAL_ATTESTATION;
|
||||||
|
|
||||||
import static com.android.internal.logging.nano.MetricsProto.MetricsEvent.PROVISIONING_ENTRY_POINT_ADB;
|
import static com.android.internal.logging.nano.MetricsProto.MetricsEvent.PROVISIONING_ENTRY_POINT_ADB;
|
||||||
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_NONE;
|
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_NONE;
|
||||||
import static com.android.internal.widget.LockPatternUtils.StrongAuthTracker.STRONG_AUTH_REQUIRED_AFTER_DPM_LOCK_NOW;
|
import static com.android.internal.widget.LockPatternUtils.StrongAuthTracker.STRONG_AUTH_REQUIRED_AFTER_DPM_LOCK_NOW;
|
||||||
@@ -540,6 +539,8 @@ import java.util.Set;
|
|||||||
import java.util.concurrent.CompletableFuture;
|
import java.util.concurrent.CompletableFuture;
|
||||||
import java.util.concurrent.ExecutionException;
|
import java.util.concurrent.ExecutionException;
|
||||||
import java.util.concurrent.Executor;
|
import java.util.concurrent.Executor;
|
||||||
|
import java.util.concurrent.LinkedBlockingQueue;
|
||||||
|
import java.util.concurrent.ThreadPoolExecutor;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
import java.util.concurrent.TimeoutException;
|
import java.util.concurrent.TimeoutException;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
@@ -18803,10 +18804,16 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ThreadPoolExecutor calculateHasIncompatibleAccountsExecutor = new ThreadPoolExecutor(
|
||||||
|
1, 1, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<>());
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void calculateHasIncompatibleAccounts() {
|
public void calculateHasIncompatibleAccounts() {
|
||||||
|
if (calculateHasIncompatibleAccountsExecutor.getQueue().size() > 1) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
new CalculateHasIncompatibleAccountsTask().executeOnExecutor(
|
new CalculateHasIncompatibleAccountsTask().executeOnExecutor(
|
||||||
AsyncTask.THREAD_POOL_EXECUTOR, null);
|
calculateHasIncompatibleAccountsExecutor, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
|
|||||||
Reference in New Issue
Block a user