Good news regarding Qt 5.5
Simon Hausmann
simon.hausmann at theqtcompany.com
Fri May 8 10:49:45 UTC 2015
On Friday, May 08, 2015 12:51:19 AM Aleix Pol wrote:
> Hi guys,
> As you might know, I tried to get Plasma some time ago working on Qt
> 5.5 and failed miserably. [1]
>
> As you'll have guessed by the subject, that's not the case anymore,
> since the last patch by Simon [2]. This means Qt 5.5 is a firm
> candidate for Plasma 5.4.
>
> Also let me use this occasion to thank Simon, who took his time to
> make us a bit happier. *applause*
>
> Cheers! \o/
Heh, thanks. Well, more like: Apologies we introduced these bugs in the first
place ;-). So that's the good news. The bad news is that those fixes didn't
make it into the 5.5 beta, but they will be in the 5.5.0 final release for
sure.
During the investigation - we also talked about this on IRC - I noticed that
plasma creates a lot of QQmlEngine instances - it seems one per applet. In the
light of each instance coming with its own garbage collection heap and its own
QML type loader thread, this seems rather heavy. I think that if you can
change Plasma to share one QQmlEngine for everything and isolate your objects
in different QQmlContext instances instead, then you should be able to save _a
lot_ of memory and also get much better performance. I'm mentioning
performance because this very bug was due to the same QObject(s) being exposed
to multiple QQmlEngine instances, which requires a fair amount of extra book-
keeping in the engines, required to look up every time for example a property
on the context object (your root item) is accessed. There's a lot more that
could be done, but this would be pretty good start I think :)
Simon
More information about the Plasma-devel
mailing list