threads gui

Alles rund um die Programmierung mit Qt
Antworten
ZzLeCzZ
Beiträge: 7
Registriert: 6. Dezember 2006 15:35

threads gui

Beitrag von ZzLeCzZ »

Hi,

habe eine Verstaendnissfrage zu threads. Hab zwar schon einiges in diesem Forum gefunden moechte es aber nochmal genau wissen. (ich verwende qt 3.3.)

Also ich habe ein main widget das meine thread-Klasse und eine QTextEdit enthaelt. Und man ahnt es schon: Text aus dem thread soll im textfeld landen.

1. Frage: ist es ok das im main widget eine instanz der thread klasse ist?

2. Frage: In der Qt Dokumentation steht das man die komunikation ueber events laufen lassen soll. Warum kann ich nicht aus dem thread heraus die application blocken qapp->lock() und dann den text direkt einfuegen? Was genau kann da schief gehen?

3. Frage: Wenn der Text relative gross ist, ist es dann nicht ungeschickt den text ueber ein event zu verschicken?

vielen dank
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

1. Nein. Warum steht in der Dokumentation.
2. Du kannst ja ein Event schicken, daß Daten bereit stehen und dann die Hauptapplikation den Thread abfragen lassen. Ich würde denn Hauptthread nicht blockieren...
3. Relativ Groß ist relativ... Wieviel MByte Text fallen nochmal an?
ZzLeCzZ
Beiträge: 7
Registriert: 6. Dezember 2006 15:35

Beitrag von ZzLeCzZ »

upsala hat geschrieben:1. Nein. Warum steht in der Dokumentation.
2. Du kannst ja ein Event schicken, daß Daten bereit stehen und dann die Hauptapplikation den Thread abfragen lassen. Ich würde denn Hauptthread nicht blockieren...
3. Relativ Groß ist relativ... Wieviel MByte Text fallen nochmal an?
1. Wo genau finde es nicht? Warum kann ich einen thread nicht von einem widget aus starten und dann vom thread zum widget events schicken?

2. ok

3. so gross sind die texte auch nicht war nur ne frage ob es da probleme gibt.

vielen dank
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

zu 1.: Das ist natürlich möglich, bei deiner 1. Anfrage war das etwas unverständlich...
Antworten