summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMorten Johan Sørvig <morten.sorvig@qt.io>2018-12-12 10:00:05 +0100
committerMorten Johan Sørvig <morten.sorvig@qt.io>2019-02-07 16:14:31 +0000
commitc1f4286a5cbc1794fe7be5bdbbd6a0bf29ef84d4 (patch)
treea917ea5849adae483b6a1d4f3cb5f9446dc09bc1
parentde4f256d48145778ed56389f5e883c5994b34dd2 (diff)
Wasm: Implement QThread::idealThreadCount()v5.13.0-alpha1
Read the navigator.hardwareConcurrency property. Task-number: QTBUG-64625 Change-Id: I2ad582b67e4b0ddac3e3c21febab55543b2e1d6d Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
-rw-r--r--src/corelib/thread/qthread_unix.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/corelib/thread/qthread_unix.cpp b/src/corelib/thread/qthread_unix.cpp
index 329caa02ba..a13f8ca215 100644
--- a/src/corelib/thread/qthread_unix.cpp
+++ b/src/corelib/thread/qthread_unix.cpp
@@ -100,6 +100,9 @@
#include <sys/neutrino.h>
#endif
+#if defined(Q_OS_WASM)
+#include <emscripten/val.h>
+#endif
QT_BEGIN_NAMESPACE
@@ -499,6 +502,8 @@ int QThread::idealThreadCount() Q_DECL_NOTHROW
// as of aug 2008 VxWorks < 6.6 only supports one single core CPU
cores = 1;
# endif
+#elif defined(Q_OS_WASM)
+ cores = emscripten::val::global("navigator")["hardwareConcurrency"].as<int>();
#else
// the rest: Linux, Solaris, AIX, Tru64
cores = (int)sysconf(_SC_NPROCESSORS_ONLN);