Все взаимодействие потоков и графики - выносить в сигналы.
You must pass to it all the data it needs to work with
- загружайте перед стартом все необходимые данные, если данные изменились, и воркеру надо их получить, отсылайте воркеру с помощью сигнала. Когда воркер сделал часть, результат он отсылает в сигнале.
Весь Qt работает на сигналах, в многопоточном режиме разници не сильно много, только в том, что для взаимодействия с графикой нужно использовать только сигналы.
UPD, у moveToThread есть особенность, все
слоты класса будут выполнятьсяв отдельном потоке.
В таком виде, как есть сейчас, вам будет очень сложно в многопоток у Qt. Классы, поля, экземпляры, общая структура приложения, система сигналов\слотов Qt, события, варианты потоков (QThread, QRunnable, QThreadPool) - про все про это надо читать и учить питон.