diff options
author | haitaol@chromium.org <haitaol@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-29 06:50:45 +0000 |
---|---|---|
committer | haitaol@chromium.org <haitaol@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-29 06:50:45 +0000 |
commit | a3cdfcfd2e526d6a6650ba790b6b8763ae9aadad (patch) | |
tree | 4c4b68b646b62c8ff4781b56c2cf72a53c430744 /sync/internal_api/test | |
parent | a1f34c689182824d6b8d4f87e1f9eb44092dd2b9 (diff) | |
download | chromium_src-a3cdfcfd2e526d6a6650ba790b6b8763ae9aadad.zip chromium_src-a3cdfcfd2e526d6a6650ba790b6b8763ae9aadad.tar.gz chromium_src-a3cdfcfd2e526d6a6650ba790b6b8763ae9aadad.tar.bz2 |
Worker changes to prepare for lock-free shutdown.
* Make worker observe the destruction of the thread where it does work.
* Make work done signal a memeber of worker and set it when worker's working
thread is destroyed so that syncer won't be blocked indefinitely on work
that's not gonna run.
* Ref-count worker in session context so that worker remains valid when syncer
is still iterating through workers but registrar has erased it from its worker map.
* Add RequestStop() and Stopped() to allow worker to return early when it's
stopped while waiting to run work on its working thread.
This cl by itself should have no real impact because the added functions are not used.
BUG=19757
Review URL: https://chromiumcodereview.appspot.com/14046031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202786 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sync/internal_api/test')
-rw-r--r-- | sync/internal_api/test/test_internal_components_factory.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sync/internal_api/test/test_internal_components_factory.cc b/sync/internal_api/test/test_internal_components_factory.cc index dee381f..18962bc 100644 --- a/sync/internal_api/test/test_internal_components_factory.cc +++ b/sync/internal_api/test/test_internal_components_factory.cc @@ -30,7 +30,7 @@ scoped_ptr<sessions::SyncSessionContext> TestInternalComponentsFactory::BuildContext( ServerConnectionManager* connection_manager, syncable::Directory* directory, - const std::vector<ModelSafeWorker*> workers, + const std::vector<ModelSafeWorker*>& workers, ExtensionsActivityMonitor* monitor, ThrottledDataTypeTracker* throttled_data_type_tracker, const std::vector<SyncEngineEventListener*>& listeners, |