Please sign in to comment.
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Prevent AsyncTask from creating too many threads
Bug #10228005 From the ThreadPoolExecutor documentation: - If fewer than corePoolSize threads are running, the Executor always prefers adding a new thread rather than queuing. - If corePoolSize or more threads are running, the Executor always prefers queuing a request rather than adding a new thread. - If a request cannot be queued, a new thread is created unless this would exceed maximumPoolSize, in which case, the task will be rejected. Before this change AsyncTask could create up to 128 threads because of the limited queue of 10 items (the capacity of a blocking queue is fixed.) This change increases the size of the queue to 128 items and reduces the maximum number of threads to the number of CPU cores * 2 + 1. Apps can still submit the same number of tasks. Change-Id: I015d77b53b6a9fda39c618830b34d45a10de5571
- Loading branch information