Seite 1 von 1
QT 4 Plugins aus dem Speicher löschen???
Verfasst: 29. Dezember 2005 18:27
von [ToTTo]
Hi,
ich arbeite im Moment mit Qt4 Plugins und mein Problem ist, dass sich diese wohl nach dem Beenden des Programms nicht aus dem Speicher löschen.
Wenn ich die Software mehrere Male ausführe, lahmt mein Rechner ohne Ende.
Ich kann mit den Plugins ohne Probleme arbeiten aber wenn ich die Objekte mit dem delete Befehl versuche zu löschen, bekomme ich Speicherzugriffsfehler.
Hat jemand eine Ahnung woran das liegen kann?
Ich halte die Instanzen (QObject*) in einem QVector.
Gruß
ToTTo
Verfasst: 29. Dezember 2005 19:34
von BartSimpson
lasse die doch einfach als Kinder deiner Application laufen. Dann sollte sich QT darum kümmern. Benutzt du Thread's?
Verfasst: 30. Dezember 2005 10:52
von [ToTTo]
Nein benutze keine Threads.
Was meinst du mit Kinder der Applikation?
Die Plugins beinhalten die FUnktionalitäten des Hauptfensters.
Mit ableiten ist da nix zu machen.
Muss man die Plugins eigentlich überhaupt selber löschen?
Normalerweise müsste das doch mit delete gehen oder?
Gruß
ToTTo
Verfasst: 30. Dezember 2005 11:23
von BartSimpson
Wenn sie von QObject abgeleitet sind, kannst du das aufräumen denn ja Qt überlassen indem du die als Kinder von deinem QCoreapplication/QApplication Objekt lädst.
Verfasst: 30. Dezember 2005 15:59
von [ToTTo]
Kannst du mir da mal ein Beispiel zu schreiben?
Ich weiß nicht genau wie du das meinst.
Für mich hört sich das danach an, dass ich die Plugins von der Hauptapplikation ableiten soll und das wäre ja dann doch eher komisch weil:
Plugins sind von QObject und plugin_interface abgeleitet und sollen sich nur in das Hauptfenster integrieren und nicht selber das Hauptfenster sein.
Ich denke mal, dass ich dich falsch verstehe *gg*.
Schreib einfach ein paar Zeilen Quellcode...
Thx im Voraus
Gruß
ToTTo
Verfasst: 30. Dezember 2005 16:04
von BartSimpson
oder schaue dir mal das Beispiel an:
4.1.0/doc/html/tools-plugandpaint.html
Verfasst: 30. Dezember 2005 16:21
von [ToTTo]
Nach dem Beispiel hab ich ja die Plugins gebaut und da wird sich nicht ums Löschen gekümmert.
und komischer weise wird auch bei dem Beispiel mein Rechner nicht langsamer.
hmmm ich glaube man weiß es einfach nicht.

Verfasst: 30. Dezember 2005 16:28
von BartSimpson
Was machen deine Plug-ins?
Verfasst: 30. Dezember 2005 16:43
von [ToTTo]
Die Plugins beinhalten die Funktionalitäten des Hauptfensters.
Sie besitzen Menubar- & Toolbareinträge im Hauptfenster.
Gehalten werden die Plugins in einem QVector, der auch nach dem Beenden des Programms von Hand gelert wird.
Es werden auch große Objekte in Plugins gehalten (z.B. ein Roboter mit mehr als 300k Polygonen). von diesen Plugins werden auch mehrere Instanzen erzeugt.