seauniv
11th December 2014, 02:34
Hi all,
We have a MDI application, using QMdiSubWindow as tabbed windows. As shown in htop, each QMdiSubWindow (and its internal widget with data) will consume 8M memory.
So, when I create more and more QMdiSubWindow, say 10, the total memory consumed by the application will gradually increase.
That's OK. The problem is when I close the existing QMdiSubWindow, the memory won't decrease.
We have set WA_DeleteOnClose attribute to delete QMdiSubWindow when closing.
setAttribute(Qt::WA_DeleteOnClose);
I know memory allocated to a process is not generally freed to the operating system immediately an object is deleted. Is there any suggestions to decrease total memory as soon as possible?
I tried Google Chrome, it will free memory to operating system in a short time when close existing tabs.
We have a MDI application, using QMdiSubWindow as tabbed windows. As shown in htop, each QMdiSubWindow (and its internal widget with data) will consume 8M memory.
So, when I create more and more QMdiSubWindow, say 10, the total memory consumed by the application will gradually increase.
That's OK. The problem is when I close the existing QMdiSubWindow, the memory won't decrease.
We have set WA_DeleteOnClose attribute to delete QMdiSubWindow when closing.
setAttribute(Qt::WA_DeleteOnClose);
I know memory allocated to a process is not generally freed to the operating system immediately an object is deleted. Is there any suggestions to decrease total memory as soon as possible?
I tried Google Chrome, it will free memory to operating system in a short time when close existing tabs.