Run the service start user lifecycle phase in parallel.
Execute the on start user lifecycle phase in parallel.
Services will be a added to a new thread pool, and depending
on which category they are in, they will either be executed
right away (bootstrap and core categories), or run in parallel
along with other services in that category (other category).
This change will only apply for non-system users for now.
Additionally, low ram devices will have this change disabled.
Initial results show about 16% improvement in execution times.
Note: This CL does not enable the thread pool, a separate CL will
enable it.
Bug: 197257926
Test: atest UserLifecycleTests
Change-Id: I76ba673f78b69c7f0caac2d843fa77079e92138a
4 files changed