start with "Dynamic Object Management"

On 16.12.2013 02:21, Hendrik Borghorst wrote:
Than if it is so clear could you be so nice and point me to some
documentation?

Am Montag, den 16.12.2013, 02:19 +0600 schrieb Andrey Kozhevnikov:
you doing it wrong. its all what i see now :)

On 16.12.2013 02:17, Hendrik Borghorst wrote:

It is weird if I have to manually optimize something which worked for 2
years on an old Nokia N8 with 128? MB memory. I don't see any reason for
qt to create those delegate items and as I read the documentation of the
qt-project QAbstractListModel is exactly the way to go.

Also there are cases where manual optimization is far less efficient
than tested optimizations done by compilers or good libraries ;) .

Am Montag, den 16.12.2013, 02:14 +0600 schrieb Andrey Kozhevnikov:
no, i mean manual optimization.

like loading model when it actually requires, or dynamically create
listview with model using component loader or createComponent.

QML is easy and fast when you making small projects. but for complex
you should thinh HOW code actially works after interpretation.

On 16.12.2013 02:08, Hendrik Borghorst wrote:

What do you mean exactly?

Isn't this exactly what ListView should do automatically which can be
influenced with cacheBuffer? Which by the way works correctly as long as
the listview stays visible.

greetings


Am Montag, den 16.12.2013, 02:05 +0600 schrieb Andrey Kozhevnikov:
load model dynamically?

if you wont preload model before using it can solve many problems.
:)

On 16.12.2013 02:03, Hendrik Borghorst wrote:

Hello,

the problem isn't my delegate. It is quite minimal.

The problem is I think a bug in QML Listview. It goes absolutly crazy if
it is invisible and starts making delegate for around 50% of all items.
This causes the memory to run full.

A workaround I added is

model: visible ? modelVar : null

which works quite nicely. I think this bug could be an upstream qt bug?

greetings

Am Sonntag, den 15.12.2013, 10:01 +0100 schrieb
christopher.l...@thurweb.ch:
Hi Hendrik

Have you seen this? http://qt-project.org/wiki/Performance_tip_Lists

The general advice is to keep the delegates is lightweight as
possible, and to use Loaders for anything needed later (e.g. onClick)

Chris

Zitat von "Hendrik Borghorst" <hendrikborgho...@gmail.com>:

Hello folks,

I've got a problem with long lists (~25000 elements). All delegates are
created at once which causes the memory usage to explode beyond the
devices capability.

I already tried setting "cacheBuffer: 0" in SiliciaListView but  it
doesn't change it.

Is the something I'm doing wrong.

You can see the actual page code here:

https://github.com/djselbeck/smpc/blob/master/pages/CurrentPlaylistPage.qml

Shouldn't the delegates be constructed on demand? It is weird because my
old n8 wasn't struggling with qml lists with this size.

greetings and congrats on getting the devices to your customers (I'm
very pleased)

_______________________________________________
SailfishOS.org Devel mailing list
_______________________________________________
SailfishOS.org Devel mailing list
_______________________________________________
SailfishOS.org Devel mailing list
_______________________________________________
SailfishOS.org Devel mailing list

_______________________________________________
SailfishOS.org Devel mailing list
_______________________________________________
SailfishOS.org Devel mailing list


_______________________________________________
SailfishOS.org Devel mailing list

_______________________________________________
SailfishOS.org Devel mailing list

Reply via email to