D10531: [QmlObjectIncubationController] Don't call incubate() while already incubating

Kai Uwe Broulik noreply at phabricator.kde.org
Thu Feb 15 09:31:07 UTC 2018


broulik created this revision.
broulik added a reviewer: Plasma.
Restricted Application added projects: Plasma, Frameworks.
Restricted Application added subscribers: Frameworks, plasma-devel.
broulik requested review of this revision.

REVISION SUMMARY
  During incubation we're still getting `incubatingObjectCountChanged` at which point we'd also call `incubate` again, leading to tens of `incubate` calls nested within each other leading to blockage and significant slowdowns.

TEST PLAN
  This saves one second(!) of Plasma startup time for me, bringing it down from 3.5s to 2.5s for one 4K screen from `plasmashell` start till panel is up, measured scientifically accurate with a stopwatch.
  
  This also cuts first time opening of Plasma popups in half. Calendar shows up significantly quicker, previously taking over a second, now to just under half a second. Kickoff also takes 300ms instead of 600ms on first invocation for me.

REPOSITORY
  R242 Plasma Framework (Library)

REVISION DETAIL
  https://phabricator.kde.org/D10531

AFFECTED FILES
  src/kdeclarative/private/qmlobject_p.h

To: broulik, #plasma
Cc: plasma-devel, #frameworks, michaelh, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20180215/41bc7c5d/attachment.html>


More information about the Kde-frameworks-devel mailing list