Seite 1 von 1
Vorteil mehrerer Event-Loops?
Verfasst: 15. Juli 2009 16:16
von nierth
Hallo,
ich habe so langsam das Gefühl, je weiter ich in Qt vordringe, desto weniger verstehe ich. Was genau ist der Vorteil mehrerer Eventloops? Ich habe bisher erfolgreich mehrere Threads in einer Eventloop genutzt und bisher nie die Notwendigkeit einer zweiten gesehen.
Grüße,
Thomas
Re: Vorteil mehrerer Event-Loops?
Verfasst: 15. Juli 2009 17:03
von RavenIV
nierth hat geschrieben:
ich habe so langsam das Gefühl, je weiter ich in Qt vordringe, desto weniger verstehe ich. Was genau ist der Vorteil mehrerer Eventloops? Ich habe bisher erfolgreich mehrere Threads in einer Eventloop genutzt und bisher nie die Notwendigkeit einer zweiten gesehen.
Mir geht es genau anderst rum.
Je mehr ich mit Qt mache, je besser gefällt es mir.

Verfasst: 15. Juli 2009 17:45
von solarix
Was genau ist der Vorteil mehrerer Eventloops?
Ist eine seltsame Frage... So wie etwa "Wozu braucht man mehrere Pfannen beim Kochen".. Entweder man braucht sie, oder eben nicht.
Beispiel für einen Thread mit eigener Eventloop: Ein Thread soll periodisch eine aufwendige, blockierende Operation (z.B. eine Berechnung oder ein Datenbankupdate) durchführen. Dazu wird in der Run-Methode ein QTimer gestartet, welche nun (aus dem Eventloop des Threads) periodisch die Operation anstösst. Natürlich geht das auch anderst (z.B. mit sleep()), aber durch den Eventloop kann der Thread auch noch auf andere Events (z.B. "Shutdown") reagieren.
Verfasst: 15. Juli 2009 17:50
von Superheftig
Ein Thread braucht genau dann einen eigenen eventloop wenn er QT-Events empfangen muss. Dies ist z.b nötig falls der Thread oder QObjekte, die in diesem Thread erstellts wurden/leben slots besitzten, die asynchron verbunden werden.