diff Platforms/Wasm/Defaults.cpp @ 431:26b90b110719 am-vsol-upgrade

added DelayedCallExecutor to avoid using sleep() in C++ that consumes 100% CPU once executed in WASM
author am@osimis.io
date Thu, 29 Nov 2018 19:25:15 +0100
parents c23df8b3433b
children 3b4df9925db6
line wrap: on
line diff
--- a/Platforms/Wasm/Defaults.cpp	Thu Nov 29 15:11:19 2018 +0100
+++ b/Platforms/Wasm/Defaults.cpp	Thu Nov 29 19:25:15 2018 +0100
@@ -1,6 +1,7 @@
 #include "Defaults.h"
 
 #include "WasmWebService.h"
+#include "WasmDelayedCallExecutor.h"
 #include <Framework/dev.h>
 #include "Framework/Widgets/TestCairoWidget.h"
 #include <Framework/Viewport/WidgetViewport.h>
@@ -73,6 +74,7 @@
     application.reset(CreateUserApplication(broker));
     applicationWasmAdapter.reset(CreateWasmApplicationAdapter(broker, application.get())); 
     WasmWebService::SetBroker(broker);
+    WasmDelayedCallExecutor::SetBroker(broker);
 
     startupParametersBuilder.Clear();
   }
@@ -96,6 +98,7 @@
     context->SetOrthancBaseUrl(baseUri);
     printf("Base URL to Orthanc API: [%s]\n", baseUri);
     context->SetWebService(OrthancStone::WasmWebService::GetInstance());
+    context->SetDelayedCallExecutor(OrthancStone::WasmDelayedCallExecutor::GetInstance());
     application->Initialize(context.get(), statusBar_, parameters);
     application->InitializeWasm();