summaryrefslogtreecommitdiffstats
path: root/sync/internal_api/sync_manager_impl.cc
diff options
context:
space:
mode:
authorhaitaol@chromium.org <haitaol@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-10 23:02:49 +0000
committerhaitaol@chromium.org <haitaol@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-10 23:02:49 +0000
commit923cbf2ab49b8a26806e31266a59a6f8a90fa015 (patch)
tree3ef61c7532aec1902d45be01be1fe0df1a48e09b /sync/internal_api/sync_manager_impl.cc
parent62167c1b6c2777d451f4b92eef4e5ddabdbbfce4 (diff)
downloadchromium_src-923cbf2ab49b8a26806e31266a59a6f8a90fa015.zip
chromium_src-923cbf2ab49b8a26806e31266a59a6f8a90fa015.tar.gz
chromium_src-923cbf2ab49b8a26806e31266a59a6f8a90fa015.tar.bz2
Lock-free shutdown of profile sync service. Changes include:
* Disconnect non-frontend processor/associator to stop accessing directory so that sync backend can be shut down without waiting. * Change non-frontend controller so that creation/destruction of processor/associator doesn't depend on valid controller. So scoped wait on stopping controller can be removed. * Move sync thread to PSS. It's created when starting first backend and destroyed on last browser thread. BUG=19757 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=210333 Review URL: https://chromiumcodereview.appspot.com/16770005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210955 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sync/internal_api/sync_manager_impl.cc')
-rw-r--r--sync/internal_api/sync_manager_impl.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/sync/internal_api/sync_manager_impl.cc b/sync/internal_api/sync_manager_impl.cc
index 7b0e549..5700fb9 100644
--- a/sync/internal_api/sync_manager_impl.cc
+++ b/sync/internal_api/sync_manager_impl.cc
@@ -620,9 +620,9 @@ void SyncManagerImpl::RemoveObserver(SyncManager::Observer* observer) {
observers_.RemoveObserver(observer);
}
-void SyncManagerImpl::StopSyncingForShutdown(const base::Closure& callback) {
+void SyncManagerImpl::StopSyncingForShutdown() {
DVLOG(2) << "StopSyncingForShutdown";
- scheduler_->RequestStop(callback);
+ scheduler_->RequestStop();
if (connection_manager_)
connection_manager_->TerminateAllIO();
}