414dd4bf12
QQueue is-a QList, so it inherits the trait that types larger than a void* cause a heap-allocation when inserted, which is horribly inefficient. Use a std::queue instead, which, by default, is backed by std::deque. Requires rewriting the API calls, since QQueue uses non-standard function names. Text and data size increase negligibly (23 and 8 bytes, respectively), even though we're instantiating a completely new type (std::deque) instead of QList<QPair<QString, QString>>, which is probably still used, despite the inefficiency. Change-Id: I9bb04a2ec32bb1b9fa2eb83780f0aaa26e872d49 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> |
||
---|---|---|
bin | ||
config.tests | ||
dist | ||
doc | ||
examples | ||
lib | ||
mkspecs | ||
qmake | ||
src | ||
tests | ||
tools | ||
util | ||
.gitattributes | ||
.gitignore | ||
.qmake.conf | ||
.tag | ||
configure | ||
configure.bat | ||
header.BSD | ||
header.FDL | ||
header.LGPL3 | ||
header.LGPL3-COMM | ||
header.LGPL21 | ||
header.LGPL-ONLY | ||
INSTALL | ||
LGPL_EXCEPTION.txt | ||
LICENSE.FDL | ||
LICENSE.LGPLv3 | ||
LICENSE.LGPLv21 | ||
LICENSE.PREVIEW.COMMERCIAL | ||
qtbase.pro | ||
sync.profile |