Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(870)

Unified Diff: content/browser/browser_main_loop.cc

Issue 2857983003: Use constexpr TaskTraits constructor in content. (Closed)
Patch Set: CR gab #8 Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/browser_main_loop.cc
diff --git a/content/browser/browser_main_loop.cc b/content/browser/browser_main_loop.cc
index 7b6135ce7a876b1dd5cea190b4056c68c68a2478..431e2eef9dfb71cb0c534c8638aa40dca840346c 100644
--- a/content/browser/browser_main_loop.cc
+++ b/content/browser/browser_main_loop.cc
@@ -1009,8 +1009,19 @@ int BrowserMainLoop::CreateThreads() {
// |non_ui_non_io_task_runner_traits| (which can be augmented below).
// TODO(gab): Existing non-UI/non-IO BrowserThreads allow sync primitives so
// the initial redirection will as well but they probably don't need to.
- base::TaskTraits non_ui_non_io_task_runner_traits =
- base::TaskTraits().MayBlock().WithBaseSyncPrimitives();
+ base::TaskTraits non_ui_non_io_task_runner_traits;
+
+ // Note: if you're copying these TaskTraits elsewhere, you most likely don't
+ // need and shouldn't use base::WithBaseSyncPrimitives() -- see its
+ // documentation.
+ constexpr base::TaskTraits kUserVisibleTraits = {
+ base::MayBlock(), base::WithBaseSyncPrimitives(),
+ base::TaskPriority::USER_VISIBLE,
+ base::TaskShutdownBehavior::BLOCK_SHUTDOWN};
+ constexpr base::TaskTraits kUserBlockingTraits = {
+ base::MayBlock(), base::WithBaseSyncPrimitives(),
+ base::TaskPriority::USER_BLOCKING,
+ base::TaskShutdownBehavior::BLOCK_SHUTDOWN};
switch (thread_id) {
case BrowserThread::DB:
@@ -1018,9 +1029,7 @@ int BrowserMainLoop::CreateThreads() {
"BrowserMainLoop::CreateThreads:start",
"Thread", "BrowserThread::DB");
if (redirect_thread) {
- non_ui_non_io_task_runner_traits
- .WithPriority(base::TaskPriority::USER_VISIBLE)
- .WithShutdownBehavior(base::TaskShutdownBehavior::BLOCK_SHUTDOWN);
+ non_ui_non_io_task_runner_traits = kUserVisibleTraits;
} else {
thread_to_start = &db_thread_;
options.timer_slack = base::TIMER_SLACK_MAXIMUM;
@@ -1031,9 +1040,7 @@ int BrowserMainLoop::CreateThreads() {
"BrowserMainLoop::CreateThreads:start",
"Thread", "BrowserThread::FILE_USER_BLOCKING");
if (redirect_thread) {
- non_ui_non_io_task_runner_traits
- .WithPriority(base::TaskPriority::USER_BLOCKING)
- .WithShutdownBehavior(base::TaskShutdownBehavior::BLOCK_SHUTDOWN);
+ non_ui_non_io_task_runner_traits = kUserBlockingTraits;
} else {
thread_to_start = &file_user_blocking_thread_;
}
@@ -1054,9 +1061,7 @@ int BrowserMainLoop::CreateThreads() {
options.timer_slack = base::TIMER_SLACK_MAXIMUM;
#else
if (redirect_thread) {
- non_ui_non_io_task_runner_traits
- .WithPriority(base::TaskPriority::USER_VISIBLE)
- .WithShutdownBehavior(base::TaskShutdownBehavior::BLOCK_SHUTDOWN);
+ non_ui_non_io_task_runner_traits = kUserVisibleTraits;
} else {
thread_to_start = &file_thread_;
options = io_message_loop_options;
@@ -1077,9 +1082,7 @@ int BrowserMainLoop::CreateThreads() {
DCHECK(message_loop);
#endif
if (redirect_thread) {
- non_ui_non_io_task_runner_traits
- .WithPriority(base::TaskPriority::USER_BLOCKING)
- .WithShutdownBehavior(base::TaskShutdownBehavior::BLOCK_SHUTDOWN);
+ non_ui_non_io_task_runner_traits = kUserBlockingTraits;
} else {
thread_to_start = &process_launcher_thread_;
options.timer_slack = base::TIMER_SLACK_MAXIMUM;
@@ -1100,9 +1103,7 @@ int BrowserMainLoop::CreateThreads() {
options.timer_slack = base::TIMER_SLACK_MAXIMUM;
#else // OS_WIN
if (redirect_thread) {
- non_ui_non_io_task_runner_traits
- .WithPriority(base::TaskPriority::USER_BLOCKING)
- .WithShutdownBehavior(base::TaskShutdownBehavior::BLOCK_SHUTDOWN);
+ non_ui_non_io_task_runner_traits = kUserBlockingTraits;
} else {
thread_to_start = &cache_thread_;
options.timer_slack = base::TIMER_SLACK_MAXIMUM;
« no previous file with comments | « content/browser/blob_storage/chrome_blob_storage_context.cc ('k') | content/browser/devtools/protocol/page_handler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698