Laden...

Threadding nur wie

Erstellt von Taladan vor 12 Jahren Letzter Beitrag vor 12 Jahren 647 Views
Taladan Themenstarter:in
582 Beiträge seit 2008
vor 12 Jahren
Threadding nur wie

Hallo,

ich habe ein kleines Programm, bei dem es wichtig ist, das die ausführung zwingend Sequenziell ist. Nachteil ist, das die GUI bei längeren aufrufen nicht aktualisiert wird. So schreibe ich über eine statische Klasse diverse Datensätze auf den Server. Ich würde gerne über das Nachrichtensystem, was ich bereits eingebaut habe, dem Nutzer mitteilen, was gerade passiert.
Natürlich wird diese Nachricht erst angezeigt, wenn die Schreibenmethode durch gelaufen ist. Die Schreibenmethode in einen Thread zu packen ist zwar möglich, aber dann würden die Ausführungen danach ggf zu früh ausgeführt (kein sequenzieller ablauf mehr).

Aktuell ist es so aufgebaut
Hauptfenster zeigt mit Nachichten aus Nachrichtensystem an.
Page wird in Hauptfenster geladen.
Über Page wird ein UserControl aufgerufen, über welchen man das schreiben inititiern kann.
die Pagelogik wertet die Daten aus und bereitet sie auf und übergibt diese dann einer statischen Klasse zum schreiben.
Die Statische Klasse Writer schreibt die Daten und übergibt Nachrichten an das Nachrichtensystem.

Aktuell werden die Nachrichten halt erst angezeigt, wenn Writer seine arbeit vollendet hat. Wie kann ich das ändern?

Gruß dat Tala

C
2.121 Beiträge seit 2010
vor 12 Jahren

Die Schreibenmethode in einen Thread zu packen ist zwar möglich, aber dann würden die Ausführungen danach ggf zu früh ausgeführt (kein sequenzieller ablauf mehr).

Die Dinge danach auch noch in den Thread packen geht nicht?

X
1.177 Beiträge seit 2006
vor 12 Jahren

Hallo Taladan,

nimm die ganze "schreiben" logik in einen seperaten Thread, dann behält das auch das gewünschte sequenzielle Verhalten.
Im Endeffekt wird nur dein Hauptthread und der 2. Thread vertauscht. Deine Gui im Hauptthread läuft weiter, die Sequenz im Worker bleibt.

😃

Xynratron

Herr, schmeiss Hirn vom Himmel - Autsch!

Die Erfahrung zeigt immer wieder, dass viele Probleme sich in Luft auslösen, wenn man sich den nötigen Abstand bzw. Schlaf gönnt.

Taladan Themenstarter:in
582 Beiträge seit 2008
vor 12 Jahren

Werde ich mal ausprobieren

Gruß dat Tala