我在主线程中创建了一个 QWebPage(您不能在其他任何地方创建它)。我想使用 Qt 4.6 中引入的 QWebElement API 来操作此页面,但在一个单独的线程中。这样该线程将获取对页面的引用并执行我需要的必要的树遍历和属性更改。
作为Threads and QObjects文档页面解释说,在不拥有它们的线程中操作 QObject 是不安全的除非开发人员可以确保在进行此操作时所讨论的 QObject 不会处理事件。
现在,这个QWebPage也在一个QWebView中显示,但是主线程会在等待工作线程完成时被阻塞(实际上有很多工作线程,在许多不同的页面上工作)。因此,在操作进行时,主事件循环不会运行。
因此,我相信手术是安全的。 我错了吗?我错过了什么吗?我基本上是在要求保证这不会在我脸上爆炸...
最佳答案
我确实认为你是对的,而且它是安全的。至少,你让我信服了:)
关于c++ - QWebElement 在单独的线程中操作 QWebPage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2248038/