diff options
author | r.kuznetsov <r.kuznetsov@corp.mail.ru> | 2017-11-07 11:53:11 +0300 |
---|---|---|
committer | Vlad Mihaylenko <vxmihaylenko@gmail.com> | 2017-11-14 11:18:31 +0300 |
commit | 6e9b384489e89ef9c8428710a1d9913de06f18df (patch) | |
tree | 98ccc7a70134061d83f81e8549f7223dfbea51f6 /platform | |
parent | 22baa724c12a0cb00ea1c041b08cc9dcacdd5d2b (diff) |
Added async bookmarks loading
Diffstat (limited to 'platform')
-rw-r--r-- | platform/platform.cpp | 6 | ||||
-rw-r--r-- | platform/platform.hpp | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/platform/platform.cpp b/platform/platform.cpp index 33a572340f..4be81636d8 100644 --- a/platform/platform.cpp +++ b/platform/platform.cpp @@ -269,6 +269,12 @@ unsigned Platform::CpuCores() const return cores > 0 ? cores : 1; } +void Platform::ShutdownThreads() +{ + m_networkThread.ShutdownAndJoin(); + m_fileThread.ShutdownAndJoin(); +} + string DebugPrint(Platform::EError err) { switch (err) diff --git a/platform/platform.hpp b/platform/platform.hpp index efdc6f8e31..28afc9958b 100644 --- a/platform/platform.hpp +++ b/platform/platform.hpp @@ -103,6 +103,7 @@ protected: unique_ptr<base::TaskLoop> m_guiThread; base::WorkerThread m_networkThread; + base::WorkerThread m_fileThread; public: Platform(); @@ -215,6 +216,9 @@ public: template <typename Task> void RunOnNetworkThread(Task && task) { m_networkThread.Push(forward<Task>(task)); } + template <typename Task> + void RunOnFileThread(Task && task) { m_fileThread.Push(forward<Task>(task)); } + enum Priority { EPriorityBackground, @@ -266,6 +270,8 @@ public: MarketingService & GetMarketingService() { return m_marketingService; } platform::SecureStorage & GetSecureStorage() { return m_secureStorage; } + void ShutdownThreads(); + // Use this method for testing purposes only. void SetGuiThread(unique_ptr<base::TaskLoop> guiThread); |