Unsolved QProcess calls don't actually run when memory of processor runs low.
-
I have an issue where I am showing a screensaver using a loader element, which causes the memory used by my QT application to reach >100% of VSZ (the screensaver is a series of gifs). When I exit the screensaver, I set the component source of the Loader to null, but the memory utilization of my QT application does not return to baseline (60% of VSZ). Then, my objects that contain QProcesses no longer function as expected. These QProcesses work just fine before the screensaver gifs were shown, but no longer work now. I can see the debug output that the scripts are called, but it seems like they are never spawned (they never create the files needed etc).
Are there any suggestions you have to decrease the memory usage of our system when the screensaver is not showing but it is enabled? Do I need to run garbage collection manually? Do I need to destroy the component even though it is not set as the source to the Loader element?
-
Hi,
I would recommend not using gifs as it is not a lightweight format.
How many of them are you using ?
What kind of animation are they providing ? -
@SGaist Do you have any alternative formats you suggest to show animated images? I have five gifs, but we just cycle between them. The issue more that the loader source is set to the null and the gif are no longer shown, but somehow the memory usage is still inflated which breaks the rest of my application.
-
It depends on what the gifs are showing. Depending on that you might be able to implement it using QtQuick.
As for the memory management, freeing some resources during application execution does not mean that it will claimed nor returned immediately.