Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorr.kuznetsov <r.kuznetsov@corp.mail.ru>2017-11-07 11:53:11 +0300
committerVlad Mihaylenko <vxmihaylenko@gmail.com>2017-11-14 11:18:31 +0300
commit6e9b384489e89ef9c8428710a1d9913de06f18df (patch)
tree98ccc7a70134061d83f81e8549f7223dfbea51f6 /platform
parent22baa724c12a0cb00ea1c041b08cc9dcacdd5d2b (diff)
Added async bookmarks loading
Diffstat (limited to 'platform')
-rw-r--r--platform/platform.cpp6
-rw-r--r--platform/platform.hpp6
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);