Hallo,
bin absolut neu hier und habe die Suche verwendet (leider ohne Erfolg).
Ich habe folgendes Problem:
Zwei Threads:
* einer empfängt Chat-Nachrichten (= erzeugt die Signale)
* der andere ist für die Darstellung zuständig (= wartet auf die Signale und zeigt die Nachrichten an).
Wenn ich nun mit emit ein Signal erzeuge, als Parameter einen char* auf die eingetroffene Chat-Nachricht mitgebe, und diesen Pointer mit free wieder freimache, dann bekomme ich meist einen Segmentation Fault im Anzeige-Thread. OK, Grund dafür dürfte laut QT-Faq sein, dass bei mehreren Threads die Slots gequeued werden und das emit schon früher zurückkehrt.
Was kann ich nun machen, dass kein Speicherloch zurückbleibt? Ich muss diesen char* doch irgendwann mal freimachen...
Oder muss ich in diesem Fall QStrings verwenden, da diese durch den Garbage Collector irgendwann dann weggeräumt werden?
Signals: Segmentation fault nach emit
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten: