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

Unified Diff: components/sync/driver/shared_change_processor.cc

Issue 2593803002: Make sync's change processors sequence-affine. (Closed)
Patch Set: CR Created 4 years 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 | « components/sync/driver/shared_change_processor.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/sync/driver/shared_change_processor.cc
diff --git a/components/sync/driver/shared_change_processor.cc b/components/sync/driver/shared_change_processor.cc
index 9e6ac5a0c43c8ffc0c85d096b85d858054d47c7c..6e473b5c8bd8e085297c9e62cf39cfc6aa215c5c 100644
--- a/components/sync/driver/shared_change_processor.cc
+++ b/components/sync/driver/shared_change_processor.cc
@@ -6,6 +6,7 @@
#include <utility>
+#include "base/threading/sequenced_task_runner_handle.h"
#include "base/threading/thread_task_runner_handle.h"
#include "components/sync/base/data_type_histogram.h"
#include "components/sync/driver/generic_change_processor.h"
@@ -30,12 +31,12 @@ SharedChangeProcessor::SharedChangeProcessor(ModelType type)
}
SharedChangeProcessor::~SharedChangeProcessor() {
- // We can either be deleted when the DTC is destroyed (on UI
- // thread), or when the SyncableService stops syncing (datatype
- // thread). |generic_change_processor_|, if non-null, must be
- // deleted on |backend_loop_|.
+ // We can either be deleted when the DTC is destroyed (on UI thread), or when
+ // the SyncableService stops syncing (on |backend_task_runner_|).
+ // |generic_change_processor_|, if non-null, must be deleted on
+ // |backend_task_runner_|.
if (backend_task_runner_.get()) {
- if (backend_task_runner_->BelongsToCurrentThread()) {
+ if (backend_task_runner_->RunsTasksOnCurrentThread()) {
delete generic_change_processor_;
} else {
DCHECK(frontend_task_runner_->BelongsToCurrentThread());
@@ -145,7 +146,7 @@ base::WeakPtr<SyncableService> SharedChangeProcessor::Connect(
const base::WeakPtr<SyncMergeResult>& merge_result) {
DCHECK(sync_client);
DCHECK(error_handler);
- backend_task_runner_ = base::ThreadTaskRunnerHandle::Get();
+ backend_task_runner_ = base::SequencedTaskRunnerHandle::Get();
AutoLock lock(monitor_lock_);
if (disconnected_)
return base::WeakPtr<SyncableService>();
@@ -188,7 +189,7 @@ ChangeProcessor* SharedChangeProcessor::generic_change_processor() {
int SharedChangeProcessor::GetSyncCount() {
DCHECK(backend_task_runner_.get());
- DCHECK(backend_task_runner_->BelongsToCurrentThread());
+ DCHECK(backend_task_runner_->RunsTasksOnCurrentThread());
AutoLock lock(monitor_lock_);
if (disconnected_) {
LOG(ERROR) << "Change processor disconnected.";
@@ -201,7 +202,7 @@ SyncError SharedChangeProcessor::ProcessSyncChanges(
const tracked_objects::Location& from_here,
const SyncChangeList& list_of_changes) {
DCHECK(backend_task_runner_.get());
- DCHECK(backend_task_runner_->BelongsToCurrentThread());
+ DCHECK(backend_task_runner_->RunsTasksOnCurrentThread());
AutoLock lock(monitor_lock_);
if (disconnected_) {
// The DTC that disconnects us must ensure it posts a StopSyncing task.
@@ -224,7 +225,7 @@ SyncError SharedChangeProcessor::GetAllSyncDataReturnError(
ModelType type,
SyncDataList* data) const {
DCHECK(backend_task_runner_.get());
- DCHECK(backend_task_runner_->BelongsToCurrentThread());
+ DCHECK(backend_task_runner_->RunsTasksOnCurrentThread());
AutoLock lock(monitor_lock_);
if (disconnected_) {
SyncError error(FROM_HERE, SyncError::DATATYPE_ERROR,
@@ -239,7 +240,7 @@ SyncError SharedChangeProcessor::UpdateDataTypeContext(
SyncChangeProcessor::ContextRefreshStatus refresh_status,
const std::string& context) {
DCHECK(backend_task_runner_.get());
- DCHECK(backend_task_runner_->BelongsToCurrentThread());
+ DCHECK(backend_task_runner_->RunsTasksOnCurrentThread());
AutoLock lock(monitor_lock_);
if (disconnected_) {
SyncError error(FROM_HERE, SyncError::DATATYPE_ERROR,
@@ -253,7 +254,7 @@ SyncError SharedChangeProcessor::UpdateDataTypeContext(
void SharedChangeProcessor::AddLocalChangeObserver(
LocalChangeObserver* observer) {
DCHECK(backend_task_runner_.get());
- DCHECK(backend_task_runner_->BelongsToCurrentThread());
+ DCHECK(backend_task_runner_->RunsTasksOnCurrentThread());
generic_change_processor_->AddLocalChangeObserver(observer);
}
@@ -261,14 +262,14 @@ void SharedChangeProcessor::AddLocalChangeObserver(
void SharedChangeProcessor::RemoveLocalChangeObserver(
LocalChangeObserver* observer) {
DCHECK(backend_task_runner_.get());
- DCHECK(backend_task_runner_->BelongsToCurrentThread());
+ DCHECK(backend_task_runner_->RunsTasksOnCurrentThread());
generic_change_processor_->RemoveLocalChangeObserver(observer);
}
bool SharedChangeProcessor::SyncModelHasUserCreatedNodes(bool* has_nodes) {
DCHECK(backend_task_runner_.get());
- DCHECK(backend_task_runner_->BelongsToCurrentThread());
+ DCHECK(backend_task_runner_->RunsTasksOnCurrentThread());
AutoLock lock(monitor_lock_);
if (disconnected_) {
LOG(ERROR) << "Change processor disconnected.";
@@ -279,7 +280,7 @@ bool SharedChangeProcessor::SyncModelHasUserCreatedNodes(bool* has_nodes) {
bool SharedChangeProcessor::CryptoReadyIfNecessary() {
DCHECK(backend_task_runner_.get());
- DCHECK(backend_task_runner_->BelongsToCurrentThread());
+ DCHECK(backend_task_runner_->RunsTasksOnCurrentThread());
AutoLock lock(monitor_lock_);
if (disconnected_) {
LOG(ERROR) << "Change processor disconnected.";
@@ -290,7 +291,7 @@ bool SharedChangeProcessor::CryptoReadyIfNecessary() {
bool SharedChangeProcessor::GetDataTypeContext(std::string* context) const {
DCHECK(backend_task_runner_.get());
- DCHECK(backend_task_runner_->BelongsToCurrentThread());
+ DCHECK(backend_task_runner_->RunsTasksOnCurrentThread());
AutoLock lock(monitor_lock_);
if (disconnected_) {
LOG(ERROR) << "Change processor disconnected.";
« no previous file with comments | « components/sync/driver/shared_change_processor.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698