It would certainly be important where memory is at a premium like (current) mobile devices and embedded systems, or in applications that establishing a 1000 connections (I could see this in a GUI table view where each row of the table model is listening for changes from.
Comparing mem and time required to create N connections, N from pci e x1 soundkarte in pci e x16 slot 100 to 10000000.Ratios : 79 6, measuring for 1000000 connections # connects mem (bytes) time (sec).These operations involve, in my experience, much more than just establishing a few connections; various functions must be called, classes instantiated etc.Ui self) # Slot connections nnect(self.Raw :.26, pyqt Slot :.198.Hello pyqt users, i tried to use signal / slot across threads.Connection memory In terms of memory, the results show that establishing connections to raw methods take 10 to 100 times more memory than to pyqtSlot'd methods.QObject creation When populating a list widget with list items, it can be necessary to connect each item to some other object that may change as the user interacts with an applicaiton.Ratios : 26 6, measuring for 100000 connections # connects mem (bytes) time (sec).In order to let the compiler resolve the overloads we need to use static_casts to member function pointers, or (starting in.7) qOverload and friends: #include QObject class MyObject : public QObject, q_object public: explicit MyObject(QObject *parent nullptr) : QObject(parent) public slots: void slot(const. It is not likely that an application that could have so many items in a list widget would populate the complete list, this in itself would be a slow operation; the developer would likely only add about a 100 items to the list.In such a case, the time and memory comparison of connections must include the time to create each list item: in the case of a raw slot, the handler need not derive from QObject; in the case of a pyqtSlot, the handler *must* derive from.Regards, georg, more information about the PyQt mailing list.Indeed inspecting the taObject using the Python debugger* reveals that wrapped_slot is in it (somehow!).The compiler does not know which overloads to pick QObject:connect(a, MyObject:signal, b, MyObject:slot / this works, now the compiler knows which overload to pick, it is very ugly and hard to remember though.But in most GUI applications, establishing connections is likely to be sporadic: when dialog windows are opened, threads started, graphics scene objects created, lists populated.Either way, in a typical application this speed difference would be completely unnoticeable.You could achieve this by replacing class Handler(QObject @pyqtSlot def slot(self pass by this: class Handler(QObject @slot_wrapper def slot(self pass with slot_wrapper defined as def slot_wrapper(func def wrapped_slot.
Georg Altmann george at, wed Oct 1 10:41:Erick Tryzelaar schrieb: On Tue, Sep 30, 2008 at 6:27 AM, Georg Altmann george at wrote: Can I support the overloaded constructors in my subclass?
Measuring for 100 connections # connects mem (bytes) time (sec).
Ratios : nan 5, measuring for 1000 connections # connects mem (bytes) time (sec).