我有一个使用 QtScript 的应用程序。QtScript 在单独的线程中执行,这意味着如果我想从主线程小部件访问插槽,我需要某种形式的同步。在 C++ 中,这可以通过以下方法轻松完成:invokeMethod。
由于 qtscript 使用一些内部抽象来将 javascript 与 c++ 类绑定,它让我认为它可以通过相同的 invokeMethod。这意味着如果我从不同的线程调用插槽,线程就会被同步,但如果我不这样做,我会随机崩溃,可能只有在应用程序投入生产时才会发生。如果我不信任 qtscript,我必须编写一个 Wrapper,它被调用并使用 invokeMethod 调用调用所有方法,这也很糟糕。
问题是:qtscript 插槽调用是否正确同步以及如何检查?(我在带有 Qt5.1 的 Windows 上运行)