Details
-
Task
-
Resolution: Unresolved
-
P3: Somewhat important
-
None
-
None
-
None
-
13
-
31e3e886a (tqtc/lts-6.5), fdc070c3b (6.10), 601454a0f (tqtc/lts-6.8), c5492fe59 (tqtc/lts-6.5), 5e2e853b1 (tqtc/lts-6.5), 8848d58f2 (6.9), 97e193796 (tqtc/lts-6.8), 6c18b438a (dev), afdf37ad8 (dev), f6f9e0aec (tqtc/lts-6.5), 12b91f97e (6.10)
-
Foundation Sprint 129, Foundation Sprint 130, Foundation Sprint 131, Foundation Sprint 132, Foundation Sprint 133
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()
-
- Open
-