Chromium Code Reviews| Index: base/task_scheduler/post_task.h |
| diff --git a/base/task_scheduler/post_task.h b/base/task_scheduler/post_task.h |
| index 1fc10bffeade30848e53052c763932ceaced5d6f..ec8d4f18fee9e36c47f8f85d0ea1b5e5b7c71f0e 100644 |
| --- a/base/task_scheduler/post_task.h |
| +++ b/base/task_scheduler/post_task.h |
| @@ -16,6 +16,7 @@ |
| #include "base/sequenced_task_runner.h" |
| #include "base/single_thread_task_runner.h" |
| #include "base/task_runner.h" |
| +#include "base/task_scheduler/single_thread_task_runner_thread_mode.h" |
| #include "base/task_scheduler/task_traits.h" |
| #include "base/time/time.h" |
| #include "build/build_config.h" |
| @@ -190,8 +191,9 @@ BASE_EXPORT scoped_refptr<SequencedTaskRunner> |
| CreateSequencedTaskRunnerWithTraits(const TaskTraits& traits); |
| // Returns a SingleThreadTaskRunner whose PostTask invocations result in |
| -// scheduling tasks using |traits|. Tasks run on a single thread in posting |
| -// order. |
| +// scheduling tasks using |traits| on a thread determined by |thread_mode|. See |
| +// base/task_scheduler/single_thread_task_runner_thread_mode.h for |thread_mode| |
|
fdoray
2017/05/15 19:20:06
"See base/task_scheduler/single_thread_task_runner
robliao
2017/05/15 19:22:44
I wanted to avoid duplicating those details here,
|
| +// details. Tasks run on a single thread in posting order. |
| // |
| // If all you need is to make sure that tasks don't run concurrently (e.g. |
| // because they access a data structure which is not thread-safe), use |
| @@ -200,19 +202,26 @@ CreateSequencedTaskRunnerWithTraits(const TaskTraits& traits); |
| // under-documented third-party APIs, e.g. other OS') or share data across tasks |
| // using thread-local storage. |
| BASE_EXPORT scoped_refptr<SingleThreadTaskRunner> |
| -CreateSingleThreadTaskRunnerWithTraits(const TaskTraits& traits); |
| +CreateSingleThreadTaskRunnerWithTraits( |
| + const TaskTraits& traits, |
| + SingleThreadTaskRunnerThreadMode thread_mode = |
| + SingleThreadTaskRunnerThreadMode::SHARED); |
| #if defined(OS_WIN) |
| // Returns a SingleThreadTaskRunner whose PostTask invocations result in |
| -// scheduling tasks using |traits| in a COM Single-Threaded Apartment. Tasks run |
| -// in the same Single-Threaded Apartment in posting order for the returned |
| -// SingleThreadTaskRunner. There is not necessarily a one-to-one correspondence |
| -// between SingleThreadTaskRunners and Single-Threaded Apartments. The |
| -// implementation is free to share apartments or create new apartments as |
| -// necessary. In either case, care should be taken to make sure COM pointers are |
| -// not smuggled across apartments. |
| +// scheduling tasks using |traits| in a COM Single-Threaded Apartment on a |
| +// thread determined by |thread_mode|. See |
| +// base/task_scheduler/single_thread_task_runner_thread_mode.h for |thread_mode| |
|
fdoray
2017/05/15 19:20:06
ditto
|
| +// details. Tasks run in the same Single-Threaded Apartment in posting order for |
| +// the returned SingleThreadTaskRunner. There is not necessarily a one-to-one |
| +// correspondence between SingleThreadTaskRunners and Single-Threaded |
| +// Apartments. The implementation is free to share apartments or create new |
| +// apartments as necessary. In either case, care should be taken to make sure |
| +// COM pointers are not smuggled across apartments. |
| BASE_EXPORT scoped_refptr<SingleThreadTaskRunner> |
| -CreateCOMSTATaskRunnerWithTraits(const TaskTraits& traits); |
| +CreateCOMSTATaskRunnerWithTraits(const TaskTraits& traits, |
| + SingleThreadTaskRunnerThreadMode thread_mode = |
| + SingleThreadTaskRunnerThreadMode::SHARED); |
|
gab
2017/05/15 19:54:29
remove default in TaskScheduler (it's not intended
robliao
2017/05/15 20:58:27
Done.
|
| #endif // defined(OS_WIN) |
| } // namespace base |