Commit c0aac417 authored by Gabriel Charette's avatar Gabriel Charette Committed by Commit Bot

Migrate off base::ThreadPool()-as-a-trait in /chrome/browser/component_updater

This CL is a logical no-op.

It manually covers the use cases the script
(https://crbug.com/1026641#c22) didn't cover in
https://chromium-review.googlesource.com/c/chromium/src/+/2026350.

A few of the affected files were also migrated to
content::GetUIThreadTaskRunner() whenever surrounding code consistency
was at stake (but the bulk of that migration is staged to happen after
this one so this wasn't a priority in this batch).

Most files intentionally kept base/task/post_task.h as an include. It is
still required because of a cyclical dependency during the migration
preventing base/task/thread_pool.h from implicitly providing
base/task/task_traits.h to its users (callers that explicitly store
TaskTraits and include task_traits.h don't have this problem). The
post_task.h include will be cleaned up in a later phase.

This CL was uploaded by git cl split.

R=sorin@chromium.org

Bug: 1026641
Change-Id: Id06e6e33fc0031390bc227a698af034b7da15385
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2079082
Commit-Queue: Gabriel Charette <gab@chromium.org>
Auto-Submit: Gabriel Charette <gab@chromium.org>
Reviewed-by: default avatarSorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#745690}
parent 2e39cffb
......@@ -15,6 +15,7 @@
#include "base/run_loop.h"
#include "base/task/post_task.h"
#include "base/task/task_traits.h"
#include "base/task/thread_pool.h"
#include "build/build_config.h"
#include "chrome/test/base/in_process_browser_test.h"
#include "components/services/patch/content/patch_service.h"
......@@ -27,8 +28,8 @@
namespace {
constexpr base::TaskTraits kTaskTraits = {
base::ThreadPool(), base::MayBlock(), base::TaskPriority::BEST_EFFORT,
constexpr base::TaskTraits kThreadPoolTaskTraits = {
base::MayBlock(), base::TaskPriority::BEST_EFFORT,
base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN};
} // namespace
......@@ -55,8 +56,8 @@ class PatchTest : public InProcessBrowserTest {
base::FilePath path = installed_dir_.GetPath().AppendASCII(name);
base::RunLoop run_loop;
base::PostTaskAndReply(
FROM_HERE, kTaskTraits,
base::ThreadPool::PostTaskAndReply(
FROM_HERE, kThreadPoolTaskTraits,
base::BindOnce(&PatchTest::CopyFile, TestFile(name), path),
run_loop.QuitClosure());
......@@ -68,8 +69,8 @@ class PatchTest : public InProcessBrowserTest {
base::FilePath path = input_dir_.GetPath().AppendASCII(name);
base::RunLoop run_loop;
base::PostTaskAndReply(
FROM_HERE, kTaskTraits,
base::ThreadPool::PostTaskAndReply(
FROM_HERE, kThreadPoolTaskTraits,
base::BindOnce(&PatchTest::CopyFile, TestFile(name), path),
run_loop.QuitClosure());
......@@ -94,7 +95,7 @@ class PatchTest : public InProcessBrowserTest {
quit_closure_ = run_loop.QuitClosure();
done_called_ = false;
base::CreateSequencedTaskRunner(kTaskTraits)
base::ThreadPool::CreateSequencedTaskRunner(kThreadPoolTaskTraits)
->PostTask(FROM_HERE,
base::BindOnce(&PatchTest::PatchAsyncSequencedTaskRunner,
base::Unretained(this), operation, input,
......
......@@ -16,7 +16,8 @@
#include "base/memory/ref_counted.h"
#include "base/path_service.h"
#include "base/stl_util.h"
#include "base/task/post_task.h"
#include "base/task/task_traits.h"
#include "base/task/thread_pool.h"
#include "base/version.h"
#include "chrome/browser/media/media_engagement_preloaded_list.h"
#include "components/component_updater/component_updater_paths.h"
......@@ -82,17 +83,17 @@ void MediaEngagementPreloadComponentInstallerPolicy::ComponentReady(
const base::Version& version,
const base::FilePath& install_dir,
std::unique_ptr<base::DictionaryValue> manifest) {
base::TaskTraits task_traits = {
base::ThreadPool(), base::MayBlock(), base::TaskPriority::BEST_EFFORT,
constexpr base::TaskTraits kTaskTraits = {
base::MayBlock(), base::TaskPriority::BEST_EFFORT,
base::TaskShutdownBehavior::CONTINUE_ON_SHUTDOWN};
base::OnceClosure task =
base::BindOnce(&LoadPreloadedDataFromDisk, GetInstalledPath(install_dir));
if (!on_load_closure_) {
base::PostTask(FROM_HERE, task_traits, std::move(task));
base::ThreadPool::PostTask(FROM_HERE, kTaskTraits, std::move(task));
} else {
base::PostTaskAndReply(FROM_HERE, task_traits, std::move(task),
std::move(on_load_closure_));
base::ThreadPool::PostTaskAndReply(FROM_HERE, kTaskTraits, std::move(task),
std::move(on_load_closure_));
}
}
......
......@@ -25,7 +25,7 @@
#include "base/sequence_checker.h"
#include "base/strings/sys_string_conversions.h"
#include "base/strings/utf_string_conversions.h"
#include "base/task/post_task.h"
#include "base/task/thread_pool.h"
#include "base/time/time.h"
#include "build/build_config.h"
#include "chrome/browser/component_updater/component_updater_utils.h"
......@@ -35,9 +35,10 @@
namespace component_updater {
constexpr base::TaskTraits RecoveryComponentActionHandler::kTaskTraits;
constexpr base::TaskTraits
RecoveryComponentActionHandler::kTaskTraitsRunCommand;
RecoveryComponentActionHandler::kThreadPoolTaskTraits;
constexpr base::TaskTraits
RecoveryComponentActionHandler::kThreadPoolTaskTraitsRunCommand;
RecoveryComponentActionHandler::RecoveryComponentActionHandler(
const std::vector<uint8_t>& key_hash,
......@@ -55,7 +56,7 @@ void RecoveryComponentActionHandler::Handle(const base::FilePath& action,
session_id_ = session_id;
callback_ = std::move(callback);
base::CreateSequencedTaskRunner(kTaskTraits)
base::ThreadPool::CreateSequencedTaskRunner(kThreadPoolTaskTraits)
->PostTask(
FROM_HERE,
component_updater::IsPerUserInstall()
......@@ -100,9 +101,10 @@ void RecoveryComponentActionHandler::RunCommand(
options.start_hidden = true;
#endif
base::Process process = base::LaunchProcess(cmdline, options);
base::PostTask(FROM_HERE, kTaskTraitsRunCommand,
base::BindOnce(&RecoveryComponentActionHandler::WaitForCommand,
this, std::move(process)));
base::ThreadPool::PostTask(
FROM_HERE, kThreadPoolTaskTraitsRunCommand,
base::BindOnce(&RecoveryComponentActionHandler::WaitForCommand, this,
std::move(process)));
}
void RecoveryComponentActionHandler::WaitForCommand(base::Process process) {
......
......@@ -68,13 +68,13 @@ class RecoveryComponentActionHandler : public update_client::ActionHandler {
Callback callback) override;
protected:
static constexpr base::TaskTraits kTaskTraits = {
base::ThreadPool(), base::MayBlock(), base::TaskPriority::BEST_EFFORT,
static constexpr base::TaskTraits kThreadPoolTaskTraits = {
base::MayBlock(), base::TaskPriority::BEST_EFFORT,
base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN};
// This task joins a process, hence .WithBaseSyncPrimitives().
static constexpr base::TaskTraits kTaskTraitsRunCommand = {
base::ThreadPool(), base::MayBlock(), base::WithBaseSyncPrimitives(),
static constexpr base::TaskTraits kThreadPoolTaskTraitsRunCommand = {
base::MayBlock(), base::WithBaseSyncPrimitives(),
base::TaskPriority::BEST_EFFORT,
base::TaskShutdownBehavior::CONTINUE_ON_SHUTDOWN};
......
......@@ -20,7 +20,7 @@
#include "base/process/process.h"
#include "base/single_thread_task_runner.h"
#include "base/strings/utf_string_conversions.h"
#include "base/task/post_task.h"
#include "base/task/thread_pool.h"
#include "chrome/browser/component_updater/component_updater_utils.h"
#include "chrome/browser/component_updater/recovery_improved_component_installer.h"
#include "chrome/elevation_service/elevation_service_idl.h"
......@@ -120,8 +120,9 @@ base::CommandLine RecoveryComponentActionHandlerWin::MakeCommandLine(
}
void RecoveryComponentActionHandlerWin::Elevate(Callback callback) {
base::CreateCOMSTATaskRunner(
kTaskTraitsRunCommand, base::SingleThreadTaskRunnerThreadMode::DEDICATED)
base::ThreadPool::CreateCOMSTATaskRunner(
kThreadPoolTaskTraitsRunCommand,
base::SingleThreadTaskRunnerThreadMode::DEDICATED)
->PostTask(
FROM_HERE,
base::BindOnce(&RecoveryComponentActionHandlerWin::RunElevatedInSTA,
......
......@@ -28,6 +28,7 @@
#include "base/strings/string_util.h"
#include "base/task/post_task.h"
#include "base/task/task_traits.h"
#include "base/task/thread_pool.h"
#include "base/threading/thread_task_runner_handle.h"
#include "base/value_conversions.h"
#include "base/values.h"
......@@ -66,8 +67,8 @@ const char kExtensionShortName[] = "short_name";
const char kExtensionIcons[] = "icons";
const char kExtensionLargeIcon[] = "128";
constexpr base::TaskTraits kTaskTraits = {
base::ThreadPool(), base::MayBlock(), base::TaskPriority::BEST_EFFORT,
constexpr base::TaskTraits kThreadPoolTaskTraits = {
base::MayBlock(), base::TaskPriority::BEST_EFFORT,
base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN};
base::string16 GetWhitelistTitle(const base::DictionaryValue& manifest) {
......@@ -404,7 +405,7 @@ class SupervisedUserWhitelistInstallerImpl
observer_;
scoped_refptr<base::SequencedTaskRunner> sequenced_task_runner_ =
base::CreateSequencedTaskRunner(kTaskTraits);
base::ThreadPool::CreateSequencedTaskRunner(kThreadPoolTaskTraits);
base::WeakPtrFactory<SupervisedUserWhitelistInstallerImpl> weak_ptr_factory_{
this};
......@@ -477,8 +478,8 @@ void SupervisedUserWhitelistInstallerImpl::OnRawWhitelistReady(
const base::FilePath& large_icon_path,
const base::FilePath& whitelist_path) {
// TODO(sorin): avoid using a single thread task runner crbug.com/744718.
auto task_runner = base::CreateSingleThreadTaskRunner(
kTaskTraits, base::SingleThreadTaskRunnerThreadMode::SHARED);
auto task_runner = base::ThreadPool::CreateSingleThreadTaskRunner(
kThreadPoolTaskTraits, base::SingleThreadTaskRunnerThreadMode::SHARED);
task_runner->PostTask(
FROM_HERE,
base::BindOnce(
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment