ich habe mit meiner Anwendung das Problem, dass sie, je länger sie läuft, immer mehr Speicher benötigt.
Ich denke, dass es mit einer QList zu tun hat, die ich zur Kommunikation zwischen zwei threads nutze.
Folgendes Prinzip habe ich implementiert:
Code: Alles auswählen
Thread 1:
while(1)
{
p_item = new eine_neue_Variable
// tu was mit der neuen Variable
// zum Schluss:
meine_QList->append(p_item);
}
Thread 2:
while(1)
{
if (!meine_QList->isEmpty())
{
emit data(meine_QList->first());
meine_QList->removeFirst();
}
}Meine Vermutung: Die Variablen werden zwar von der Liste gelöscht, verbleiben jedoch im Speicher.
Ist die Vermutung korrekt?
Wie kann ich das Problem lösen?
Ganz naiv habe ich es mit
Code: Alles auswählen
delete meine_QList->first()Grüße
Christian