Details
-
Task
-
Resolution: Unresolved
-
P3: Somewhat important
-
None
-
None
-
None
-
13
-
8e98a3a82 (dev), 1fa31be7c (dev), a481a79a9 (dev), cac63042b (dev), 4a1de9106 (6.9), d4cd7bf5f (6.9), 1f2565e96 (6.9), 95fd5fc0d (6.9), 96f930377 (6.8), 8a30af2c3 (tqtc/lts-6.5)
-
Foundation Sprint 129, Foundation Sprint 130
Description
In the eternal debate whether string-based or PMF-based QObject::connect() is "better", dfaure_kdab offered the argument that the latter are faster than the former.
tst_bench_qobject confirms this (not posting benchmark results, because they're done with an ubsan/asan build), but, at least for normalized signatures, this is kinda surprising, because the PMF-connect needs to allocate an (additional) QSlotObject instance, while string-based connect() merely needs to parse (compare, really) a (relatively short) string.
Investigate why string-based connect is so slow and try to optimize it, starting with de-pessimisation.
Attachments
Issue Links
- relates to
-
QTBUG-135819 QObject::disconnect(s, sig, r, slot) seems to always run normalizeSignature()
-
- Reported
-
Gerrit Reviews
For Gerrit Dashboard: QTBUG-135572 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
638296,3 | QMetaObject: remove the Qt 6 QVector -> QList porting kludge | dev | qt/qtbase | Status: NEW | -1 | 0 |
640467,1 | QMetaObject: port QArgumentType to QByteArrayView | dev | qt/qtbase | Status: NEW | +2 | 0 |