0
Files
src/base/task
Anand Ravi 9d185cd68f [base] Enable priority inheritance mutexes on Android
This commit adds support for priority inheritance mutexes on all Linux
platforms but enables it only on Android at build time. The feature is
enabled only on kernel versions >= 6.1 and is further gated behind a
feature flag to monitor its effect prior to full enablement.

Currently, the background priority worker threads feature is purely a
function of if priority inheritance locks are supported. But in order to
gather field data on the effects of running worker threads at background
priority once priority inheritance mutexes are enabled, the two features
need to be decoupled. Thus, the enablement of background priority worker
threads is gated behind a separate feature flag.

Bug: 384902323
Change-Id: I2a59549aaedfb27127f241103ab05a7f95d8c631
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6299348
Commit-Queue: Anand Ravi <anandrv@google.com>
Reviewed-by: Matthew Denton <mpdenton@chromium.org>
Reviewed-by: Benoit Lize <lizeb@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1438818}
2025-03-27 09:41:52 -07:00
..
2025-03-25 07:56:27 -07:00

This directory has the following layout:

  • base/task/: public APIs for posting tasks and managing task queues.
  • base/task/thread_pool/: implementation of the ThreadPool.
  • base/task/sequence_manager/: implementation of the SequenceManager.
  • base/task/common/: implementation details shared by ThreadPool and SequenceManager.

Apart from embedders explicitly managing a ThreadPoolInstance and/or SequenceManager instance(s) for their process/threads, the vast majority of users should only need APIs in base/task/.

Documentation: