diff options
| author | 2019-05-14 18:22:46 +0000 | |
|---|---|---|
| committer | 2019-05-14 18:22:46 +0000 | |
| commit | d20761b1ee58ddb28d7fc2efb4799fe5e50ba23f (patch) | |
| tree | 345d01cc22cc94334c4e94a62944b27eef6c3738 | |
| parent | abe2321f1f77bf202dfd045944d3a452b8d9133b (diff) | |
| parent | 4b76bc1ce1a730b1a65f4a64b33ed198b2c7e46e (diff) | |
Merge "Process start optimization" into qt-dev
| -rw-r--r-- | services/core/java/com/android/server/am/ProcessList.java | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/services/core/java/com/android/server/am/ProcessList.java b/services/core/java/com/android/server/am/ProcessList.java index 696697eddf25..b394eea95a88 100644 --- a/services/core/java/com/android/server/am/ProcessList.java +++ b/services/core/java/com/android/server/am/ProcessList.java @@ -1658,23 +1658,15 @@ public final class ProcessList { app.killed = false; final long startSeq = app.startSeq = ++mProcStartSeqCounter; app.setStartParams(uid, hostingRecord, seInfo, startTime); + app.setUsingWrapper(invokeWith != null + || SystemProperties.get("wrap." + app.processName) != null); + mPendingStarts.put(startSeq, app); + if (mService.mConstants.FLAG_PROCESS_START_ASYNC) { if (DEBUG_PROCESSES) Slog.i(TAG_PROCESSES, "Posting procStart msg for " + app.toShortString()); mService.mProcStartHandler.post(() -> { try { - synchronized (mService) { - final String reason = isProcStartValidLocked(app, startSeq); - if (reason != null) { - Slog.w(TAG_PROCESSES, app + " not valid anymore," - + " don't start process, " + reason); - app.pendingStart = false; - return; - } - app.setUsingWrapper(invokeWith != null - || SystemProperties.get("wrap." + app.processName) != null); - mPendingStarts.put(startSeq, app); - } final Process.ProcessStartResult startResult = startProcess(app.hostingRecord, entryPoint, app, app.startUid, gids, runtimeFlags, mountExternal, app.seInfo, requiredAbi, instructionSet, invokeWith, app.startTime); |