diff options
author | Miikka Heikkinen <miikka.heikkinen@qt.io> | 2019-08-07 16:52:00 +0300 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@qt.io> | 2019-08-13 11:52:25 +0300 |
commit | 7ea21a4315b1c6df104d80a700680dd1f9d204dc (patch) | |
tree | 8b5dca8ca23a2acdab6f8ad1f911faad1fdb1ddc /tools/viewer/viewer.pro | |
parent | d2a1092b93e9669288dc1d5825bfec849bec9f95 (diff) |
Make runtime initialization optionally not block QML
Runtime initialization made non-blocking by offloading it to a worker
thread. This causes various object thread affinities in runtime
to be incorrect. This is relevant at least for the singaling,
where having affinity to non-existing initialization thread would
cause signals to not be delivered.
To work around this issue, signal proxy thread affinitions and
signal connections are set after initialization has completed.
Similarly, behavior script QML engine initialization is deferred
so that it can be done in correct thread.
Task-number: QT3DS-3805
Change-Id: Ie8b64f4ecd93e4c422e369e625080652d67bde27
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Diffstat (limited to 'tools/viewer/viewer.pro')
-rw-r--r-- | tools/viewer/viewer.pro | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/tools/viewer/viewer.pro b/tools/viewer/viewer.pro index 927100f..fc750b7 100644 --- a/tools/viewer/viewer.pro +++ b/tools/viewer/viewer.pro @@ -21,6 +21,7 @@ SOURCES += \ $$PWD/../../src/api/studio3dqml/q3dsstudio3d.cpp \ $$PWD/../../src/api/studio3dqml/q3dsrenderer.cpp \ $$PWD/../../src/api/studio3dqml/q3dspresentationitem.cpp \ + $$PWD/../../src/api/studio3dqml/q3dsruntimeinitializerthread.cpp \ main.cpp \ viewer.cpp \ remotedeploymentreceiver.cpp @@ -29,6 +30,7 @@ HEADERS += \ $$PWD/../../src/api/studio3dqml/q3dsstudio3d_p.h \ $$PWD/../../src/api/studio3dqml/q3dsrenderer_p.h \ $$PWD/../../src/api/studio3dqml/q3dspresentationitem_p.h \ + $$PWD/../../src/api/studio3dqml/q3dsruntimeinitializerthread_p.h \ viewer.h \ remotedeploymentreceiver.h |