Index: content/browser/appcache/appcache_service_impl.cc |
diff --git a/content/browser/appcache/appcache_service_impl.cc b/content/browser/appcache/appcache_service_impl.cc |
index 2978f4993077ccc99260e720f3c1b8c38749d117..9af861bf7d7cbba4845e414b7f437b887504db7a 100644 |
--- a/content/browser/appcache/appcache_service_impl.cc |
+++ b/content/browser/appcache/appcache_service_impl.cc |
@@ -14,7 +14,8 @@ |
#include "base/macros.h" |
#include "base/memory/ptr_util.h" |
#include "base/single_thread_task_runner.h" |
-#include "base/threading/thread_task_runner_handle.h" |
+#include "base/task_scheduler/post_task.h" |
+#include "base/threading/sequenced_task_runner_handle.h" |
#include "content/browser/appcache/appcache.h" |
#include "content/browser/appcache/appcache_backend_impl.h" |
#include "content/browser/appcache/appcache_entry.h" |
@@ -68,7 +69,7 @@ class AppCacheServiceImpl::AsyncHelper |
void CallCallback(int rv) { |
if (!callback_.is_null()) { |
// Defer to guarantee async completion. |
- base::ThreadTaskRunnerHandle::Get()->PostTask( |
+ base::SequencedTaskRunnerHandle::Get()->PostTask( |
FROM_HERE, base::Bind(&DeferredCallback, callback_, rv)); |
} |
callback_.Reset(); |
@@ -399,7 +400,10 @@ AppCacheStorageReference::~AppCacheStorageReference() {} |
AppCacheServiceImpl::AppCacheServiceImpl( |
storage::QuotaManagerProxy* quota_manager_proxy) |
- : appcache_policy_(nullptr), |
+ : db_task_runner_(base::CreateSequencedTaskRunnerWithTraits( |
+ {base::MayBlock(), base::TaskPriority::USER_VISIBLE, |
+ base::TaskShutdownBehavior::BLOCK_SHUTDOWN})), |
+ appcache_policy_(nullptr), |
quota_client_(nullptr), |
handler_factory_(nullptr), |
quota_manager_proxy_(quota_manager_proxy), |
@@ -429,14 +433,12 @@ AppCacheServiceImpl::~AppCacheServiceImpl() { |
void AppCacheServiceImpl::Initialize( |
const base::FilePath& cache_directory, |
- const scoped_refptr<base::SingleThreadTaskRunner>& db_thread, |
const scoped_refptr<base::SingleThreadTaskRunner>& cache_thread) { |
DCHECK(!storage_.get()); |
cache_directory_ = cache_directory; |
- db_thread_ = db_thread; |
cache_thread_ = cache_thread; |
AppCacheStorageImpl* storage = new AppCacheStorageImpl(this); |
- storage->Initialize(cache_directory, db_thread, cache_thread); |
+ storage->Initialize(cache_directory, db_task_runner_, cache_thread); |
storage_.reset(storage); |
} |
@@ -478,7 +480,7 @@ void AppCacheServiceImpl::Reinitialize() { |
for (auto& observer : observers_) |
observer.OnServiceReinitialized(old_storage_ref.get()); |
- Initialize(cache_directory_, db_thread_, cache_thread_); |
+ Initialize(cache_directory_, cache_thread_); |
} |
void AppCacheServiceImpl::GetAllAppCacheInfo( |