Czy potrzebny jest dekorator slotów PySide?

Widziałem przykładowy kod dla slotów PySide, który używa dekoratora @ QtCore.Slot, a niektóre nie. Sam testując to, wydaje się, że nie ma znaczenia. Czy jest powód, dla którego powinienem lub nie powinienem go używać? Na przykład w następującym kodzie:

import sys
from PySide import QtCore

# the next line seems to make no difference
@QtCore.Slot()
def a_slot(s):
    print s

class SomeClass(QtCore.QObject):
    happened = QtCore.Signal(str)
    def __init__(self):
        QtCore.QObject.__init__(self)
    def do_signal(self):
        self.happened.emit("Hi.")

sc = SomeClass()
sc.happened.connect(a_slot)
sc.do_signal()

dekorator @ QtCore.Slot nie ma znaczenia; Mogę go pominąć, wywołać @ QtCore.Slot (str), a nawet @ QtCore.Slot (int), i nadal ładnie mówi „Cześć”.

To samo wydaje się być prawdziwe dla pyQtSlot PyQt.

questionAnswers(3)

yourAnswerToTheQuestion