Sinais PyQt5 e Slots 'QObject não tem erro de atributo'

Eu tenho tentado encontrar uma maneira de atualizar o thread GUI de um thread do Python fora do main. oPyQt5 docs no sourceforge tem boas instruções sobre como fazer isso. Mas ainda não consigo fazer as coisas funcionarem.

Existe uma boa maneira de explicar a saída a seguir de uma sessão interativa? Não deveria haver uma maneira de chamar o método emit nesses objetos?

>>> from PyQt5.QtCore import QObject, pyqtSignal
>>> obj = QObject()
>>> sig = pyqtSignal()
>>> obj.emit(sig)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'QObject' object has no attribute 'emit'

e

>>> obj.sig.emit()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'QObject' object has no attribute 'sig'

e

>>> obj.sig = pyqtSignal()
>>> obj.sig.emit()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'PyQt5.QtCore.pyqtSignal' object has no attribute 'emit'

questionAnswers(1)

yourAnswerToTheQuestion