tree: a668e39ee300ec3b6ce3c967ac076b08f518e703 [path history] [tgz]
  1. common/
  2. sequence_manager/
  3. thread_pool/
  4. bind_post_task.h
  5. bind_post_task_internal.h
  6. bind_post_task_unittest.cc
  7. bind_post_task_unittest.nc
  8. cancelable_task_tracker.cc
  9. cancelable_task_tracker.h
  10. cancelable_task_tracker_unittest.cc
  11. current_thread.cc
  12. current_thread.h
  13. default_delayed_task_handle_delegate.cc
  14. default_delayed_task_handle_delegate.h
  15. default_delayed_task_handle_delegate_unittest.cc
  16. deferred_sequenced_task_runner.cc
  17. deferred_sequenced_task_runner.h
  18. deferred_sequenced_task_runner_unittest.cc
  19. delay_policy.h
  20. delayed_task_handle.cc
  21. delayed_task_handle.h
  22. delayed_task_handle_unittest.cc
  23. DIR_METADATA
  24. job_perftest.cc
  25. lazy_thread_pool_task_runner.cc
  26. lazy_thread_pool_task_runner.h
  27. lazy_thread_pool_task_runner_unittest.cc
  28. OWNERS
  29. post_job.cc
  30. post_job.h
  31. post_job_unittest.cc
  32. post_task_and_reply_with_result_internal.h
  33. README.md
  34. scoped_set_task_priority_for_current_thread.cc
  35. scoped_set_task_priority_for_current_thread.h
  36. scoped_set_task_priority_for_current_thread_unittest.cc
  37. sequenced_task_runner.cc
  38. sequenced_task_runner.h
  39. sequenced_task_runner_helpers.h
  40. sequenced_task_runner_unittest.cc
  41. single_thread_task_executor.cc
  42. single_thread_task_executor.h
  43. single_thread_task_executor_unittest.cc
  44. single_thread_task_runner.cc
  45. single_thread_task_runner.h
  46. single_thread_task_runner_thread_mode.h
  47. single_thread_task_runner_unittest.cc
  48. task_features.cc
  49. task_features.h
  50. task_observer.h
  51. task_runner.cc
  52. task_runner.h
  53. task_runner_unittest.cc
  54. task_traits.cc
  55. task_traits.h
  56. task_traits_unittest.cc
  57. task_traits_unittest.nc
  58. thread_pool.cc
  59. thread_pool.h
  60. thread_pool_unittest.cc
  61. updateable_sequenced_task_runner.h
base/task/README.md

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: