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

Unified Diff: net/url_request/url_request_context_builder.cc

Issue 2977693003: Use TaskRunner passed in to URLRequestContextBuilder only for the cache (Closed)
Patch Set: Actually, don't need to set the thread everywhere Created 3 years, 5 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
« no previous file with comments | « net/url_request/url_request_context_builder.h ('k') | remoting/base/url_request_context_getter.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/url_request/url_request_context_builder.cc
diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/url_request_context_builder.cc
index 60d6e7065d001ba6d2c67274eaa276fb2b79f8dc..4955f6b9bd0d546aecdfaf2463650900a9212f49 100644
--- a/net/url_request/url_request_context_builder.cc
+++ b/net/url_request/url_request_context_builder.cc
@@ -291,9 +291,9 @@ void URLRequestContextBuilder::SetCookieAndChannelIdStores(
channel_id_service_ = std::move(channel_id_service);
}
-void URLRequestContextBuilder::SetFileTaskRunner(
- const scoped_refptr<base::SingleThreadTaskRunner>& task_runner) {
- file_task_runner_ = task_runner;
+void URLRequestContextBuilder::SetCacheThreadTaskRunner(
+ scoped_refptr<base::SingleThreadTaskRunner> cache_thread_task_runner) {
+ cache_thread_task_runner_ = std::move(cache_thread_task_runner);
}
void URLRequestContextBuilder::SetProtocolHandler(
@@ -383,7 +383,7 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
// user-visible. Block shutdown to ensure it does get persisted to disk,
// since it contains security-relevant information.
scoped_refptr<base::SequencedTaskRunner> task_runner(
- GetFileSequencedTaskRunner(
+ base::CreateSequencedTaskRunnerWithTraits(
{base::MayBlock(), base::TaskPriority::BACKGROUND,
base::TaskShutdownBehavior::BLOCK_SHUTDOWN}));
@@ -459,16 +459,19 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
if (http_cache_enabled_) {
std::unique_ptr<HttpCache::BackendFactory> http_cache_backend;
if (http_cache_params_.type != HttpCacheParams::IN_MEMORY) {
+ if (!cache_thread_task_runner_) {
+ cache_thread_task_runner_ =
+ base::CreateSingleThreadTaskRunnerWithTraits(
+ {base::MayBlock(), base::TaskPriority::USER_BLOCKING,
+ base::TaskShutdownBehavior::BLOCK_SHUTDOWN});
+ }
BackendType backend_type =
http_cache_params_.type == HttpCacheParams::DISK
? CACHE_BACKEND_DEFAULT
: CACHE_BACKEND_SIMPLE;
http_cache_backend.reset(new HttpCache::DefaultBackend(
DISK_CACHE, backend_type, http_cache_params_.path,
- http_cache_params_.max_size,
- GetFileSingleThreadTaskRunner(
- {base::MayBlock(), base::TaskPriority::USER_BLOCKING,
- base::TaskShutdownBehavior::BLOCK_SHUTDOWN})));
+ http_cache_params_.max_size, cache_thread_task_runner_));
} else {
http_cache_backend =
HttpCache::DefaultBackend::InMemory(http_cache_params_.max_size);
@@ -499,7 +502,7 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
if (file_enabled_) {
job_factory->SetProtocolHandler(
url::kFileScheme,
- base::MakeUnique<FileProtocolHandler>(GetFileTaskRunner(
+ base::MakeUnique<FileProtocolHandler>(base::CreateTaskRunnerWithTraits(
{base::MayBlock(), base::TaskPriority::USER_BLOCKING,
base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN})));
}
@@ -545,27 +548,4 @@ std::unique_ptr<ProxyService> URLRequestContextBuilder::CreateProxyService(
std::move(proxy_config_service), net_log);
}
-scoped_refptr<base::TaskRunner> URLRequestContextBuilder::GetFileTaskRunner(
- const base::TaskTraits& traits) {
- if (file_task_runner_)
- return file_task_runner_;
- return base::CreateTaskRunnerWithTraits(traits);
-}
-
-scoped_refptr<base::SequencedTaskRunner>
-URLRequestContextBuilder::GetFileSequencedTaskRunner(
- const base::TaskTraits& traits) {
- if (file_task_runner_)
- return file_task_runner_;
- return base::CreateSequencedTaskRunnerWithTraits(traits);
-}
-
-scoped_refptr<base::SingleThreadTaskRunner>
-URLRequestContextBuilder::GetFileSingleThreadTaskRunner(
- const base::TaskTraits& traits) {
- if (file_task_runner_)
- return file_task_runner_;
- return base::CreateSingleThreadTaskRunnerWithTraits(traits);
-}
-
} // namespace net
« no previous file with comments | « net/url_request/url_request_context_builder.h ('k') | remoting/base/url_request_context_getter.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698