The situation I have is a mystery memory allocation problem with Qt 4.8 specifically in the QDeclarativeView. Before commenting that the solution is in Qt5 please know we are stuck with this version of Qt so that is not a solution for us. What I’ve seen is that a bunch of allocated QDeclarativeView’s are being updated in a loop that goes for awhile. These are pretty complex views (thus why we chose QML, it was ideal for producing detailed views that looked good).
What I’m observing is that inside of this loop memory is continually being allocated at a pretty substantial rate. I’ve even gone so far as to put a breakpoint into the new.cpp file and watch what is being allocated (when above a certain threshold because obviously there are always small allocations). The only code I’ve observed that does allocations in a large chunk is the QRasterPaintEngine.
The questions I have are: 1) Is this normal for a QDeclarativeView to request more and more memory? 2) Is the memory being released? 3) If the memory isn’t being released, is there a way I can trigger Qt to release the memory? 4) If nothing else, is there a decent website that shows exactly how Qt memory allocation works and how to get the thing to release the memory?
Thanks everyone in advance.
↧