Вопрос

У меня есть QWebPage, созданный в основном потоке (вы не можете создать его где-либо еще).Я хотел бы манипулировать этой страницей с помощью API QWebElement, представленного в Qt 4.6, но в отдельном потоке.Чтобы этот поток получил ссылку на страницу и выполнил необходимое обход дерева и изменение атрибутов, которые мне нужны.

Как Потоки и QObjects страница документа объясняет, что небезопасно манипулировать объектами QObject в потоках, которым они не принадлежат. пока не разработчик может гарантировать, что рассматриваемый QObject не будет обрабатывать события, пока происходит эта манипуляция.

Теперь этот QWebPage также отображается в QWebView, но основной поток будет заблокирован в ожидании завершения рабочего потока (на самом деле их много, работающих на разных страницах).Следовательно, основной цикл событий не будет работать во время выполнения операции.

Таким образом, я считаю, что операция безопасна. Я ошибаюсь?Я что-то пропустил? По сути, я прошу заверения, что это не обернется мне в лицо...

Это было полезно?

Решение

Я думаю, ты прав, и это безопасно.По крайней мере, вы меня убедили :)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top