summaryrefslogtreecommitdiff
path: root/platform/node/src/node_thread_pool.cpp
diff options
context:
space:
mode:
authorThiago Marcos P. Santos <tmpsantos@gmail.com>2019-02-14 16:56:17 +0200
committerThiago Marcos P. Santos <tmpsantos@gmail.com>2019-05-10 14:20:38 +0300
commit06f1dc48a2fb317979ab48ce323115be5bd48f16 (patch)
tree5ef1e78a1f98a7a26034ca519e267bda235b2817 /platform/node/src/node_thread_pool.cpp
parent947bc75f56fae7f1e70f21b98730dc6b460b9194 (diff)
downloadqtlocation-mapboxgl-06f1dc48a2fb317979ab48ce323115be5bd48f16.tar.gz
[core] Make the BackgroundScheduler a singleton
- Do not carry it over everywhere as parameter, it is a shared instance anyway and the lifecycle is pretty much the app lifecycle from the moment we instantiate a map. - Rename to BackgroundScheduler because it is a Scheduler that will do tasks in the background, we don't make assumptions if it is a thread pool or a single thread. - Most importantly, remove the dependency from `core` on `platform`.
Diffstat (limited to 'platform/node/src/node_thread_pool.cpp')
-rw-r--r--platform/node/src/node_thread_pool.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/platform/node/src/node_thread_pool.cpp b/platform/node/src/node_thread_pool.cpp
index 1f37565e8a..de403c605c 100644
--- a/platform/node/src/node_thread_pool.cpp
+++ b/platform/node/src/node_thread_pool.cpp
@@ -2,6 +2,7 @@
#include "util/async_queue.hpp"
#include <mbgl/actor/mailbox.hpp>
+#include <mbgl/platform/background_scheduler.hpp>
namespace node_mbgl {
@@ -35,3 +36,14 @@ void NodeThreadPool::Worker::WorkComplete() {
}
} // namespace node_mbgl
+
+namespace mbgl {
+namespace platform {
+
+Scheduler& GetBackgroundScheduler() {
+ static node_mbgl::NodeThreadPool pool;
+ return pool;
+}
+
+} // namespace platform
+} // namespace mbgl