diff --git a/services/core/java/com/android/server/pm/InstallPackageHelper.java b/services/core/java/com/android/server/pm/InstallPackageHelper.java index 8bd1da9fbe9b2..2d8d4f5881925 100644 --- a/services/core/java/com/android/server/pm/InstallPackageHelper.java +++ b/services/core/java/com/android/server/pm/InstallPackageHelper.java @@ -2545,7 +2545,6 @@ final class InstallPackageHelper { ArrayList[] components; int size = 0; int[] uids; - Process.setThreadPriority(Process.THREAD_PRIORITY_DEFAULT); synchronized (mPm.mLock) { final SparseArray>> userIdToPackagesToComponents = @@ -2584,7 +2583,6 @@ final class InstallPackageHelper { mPm.sendPackageChangedBroadcast(snapshot, packages[i], true /* dontKillApp */, components[i], uids[i], null /* reason */); } - Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND); } void handlePackagePostInstall(PackageInstalledInfo res, InstallArgs installArgs, diff --git a/services/core/java/com/android/server/pm/PackageHandler.java b/services/core/java/com/android/server/pm/PackageHandler.java index e8faca9765f85..0dfa31c5f1fc3 100644 --- a/services/core/java/com/android/server/pm/PackageHandler.java +++ b/services/core/java/com/android/server/pm/PackageHandler.java @@ -75,7 +75,7 @@ final class PackageHandler extends Handler { try { doHandleMessage(msg); } finally { - Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND); + Process.setThreadPriority(Process.THREAD_PRIORITY_DEFAULT); } } @@ -136,19 +136,13 @@ final class PackageHandler extends Handler { } } break; case WRITE_SETTINGS: { - Process.setThreadPriority(Process.THREAD_PRIORITY_DEFAULT); mPm.writeSettings(); - Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND); } break; case WRITE_PACKAGE_RESTRICTIONS: { - Process.setThreadPriority(Process.THREAD_PRIORITY_DEFAULT); mPm.writePendingRestrictions(); - Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND); } break; case WRITE_PACKAGE_LIST: { - Process.setThreadPriority(Process.THREAD_PRIORITY_DEFAULT); mPm.writePackageList(msg.arg1); - Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND); } break; case CHECK_PENDING_VERIFICATION: { final int verificationId = msg.arg1; diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 88564aa2e935a..2cef35fcf0f60 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -1413,7 +1413,9 @@ public class PackageManagerService implements PackageSender, TestUtilityService t.traceBegin("create package manager"); final PackageManagerTracedLock lock = new PackageManagerTracedLock(); final Object installLock = new Object(); - HandlerThread backgroundThread = new HandlerThread("PackageManagerBg"); + + HandlerThread backgroundThread = new ServiceThread("PackageManagerBg", + Process.THREAD_PRIORITY_BACKGROUND, true /*allowIo*/); backgroundThread.start(); Handler backgroundHandler = new Handler(backgroundThread.getLooper()); @@ -1467,7 +1469,7 @@ public class PackageManagerService implements PackageSender, TestUtilityService (i, pm) -> domainVerificationService, (i, pm) -> { HandlerThread thread = new ServiceThread(TAG, - Process.THREAD_PRIORITY_BACKGROUND, true /*allowIo*/); + Process.THREAD_PRIORITY_DEFAULT, true /*allowIo*/); thread.start(); return new PackageHandler(thread.getLooper(), pm); },