QCoreApplication::postEvent in Multithreading Umgebungen
Verfasst: 24. Dezember 2008 11:39
Hallo,
Vielleicht könnt ihr mir bei folgenden Problem weiterhelfen:
Ich hab ein Objekt, welches zu einem Dispatcher Thread zugeordnet ist (QObject::moveToThread(Dispatcher)), und möchte diesem jetzt ein Event schicken, welches aber asynchron abgearbeitet werden soll. Laut Qt Doku macht man das mit QtCoreApplication::postEvent.
Beim Testen sende ich dann ein Event aus dem GUI Thread, das Event wird aber nicht wie erwartet im Dispatcher Thread ausgeführt, sondern im GUI Thread. Die Qt Doku ist dahingehenden auch nicht besonders gut, für mich ist das ein Standard Anwendungsfall, und ich hab in der Doku nichts konkretes über einen solchen Problemfall gelesen. Sie schreiben nur "Adds the event event, ..., to an event queue ...", wenn ich das schon lese, "to an event queue", mich würd halt interessieren zu welcher?
Dankeschön!
Vielleicht könnt ihr mir bei folgenden Problem weiterhelfen:
Ich hab ein Objekt, welches zu einem Dispatcher Thread zugeordnet ist (QObject::moveToThread(Dispatcher)), und möchte diesem jetzt ein Event schicken, welches aber asynchron abgearbeitet werden soll. Laut Qt Doku macht man das mit QtCoreApplication::postEvent.
Beim Testen sende ich dann ein Event aus dem GUI Thread, das Event wird aber nicht wie erwartet im Dispatcher Thread ausgeführt, sondern im GUI Thread. Die Qt Doku ist dahingehenden auch nicht besonders gut, für mich ist das ein Standard Anwendungsfall, und ich hab in der Doku nichts konkretes über einen solchen Problemfall gelesen. Sie schreiben nur "Adds the event event, ..., to an event queue ...", wenn ich das schon lese, "to an event queue", mich würd halt interessieren zu welcher?
Dankeschön!