まず、古いスタイルの信号とスロット、およびQThreadsを使用しています。
2つのスレッドがあります。1つはGUI用で、もう1つはワーカー用です。ワーカーからシグナルが発行されると、GUIはこれを独自のスレッドで処理します。
プロセスの一部として、ワーカーはオブジェクトもスロットに渡しているので、次を使用しています。
self.emit(SIGNAL(my_signal(PyQT_PyObject), self.object_to_pass)
GUIはこのオブジェクトを解釈する必要があります。実際、属性を読み取り、それに応じてプログレスバーを更新します。スロットは次のように定義されます。
def my_slot(self, my_state):
self._state = my_state #so object_to_pass comes in from the worker here
私の質問は次のとおりです。渡されたオブジェクトスレッドへのアクセスは安全ですか?ワーカーがobject_to_passの属性を変更した場合、つまりself._stateも変更された場合はどうなりますか?