Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Threadding nur wie
Taladan
myCSharp.de - Member

Avatar #avatar-2980.jpg


Dabei seit:
Beiträge: 582
Herkunft: Osnabrück

Themenstarter:

Threadding nur wie

beantworten | zitieren | melden

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
private Nachricht | Beiträge des Benutzers
chilic
myCSharp.de - Experte



Dabei seit:
Beiträge: 2.114

beantworten | zitieren | melden

Zitat von Taladan
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?
private Nachricht | Beiträge des Benutzers
Xynratron
myCSharp.de - Member



Dabei seit:
Beiträge: 1.177

beantworten | zitieren | melden

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!
Zitat von herbivore
Die Erfahrung zeigt immer wieder, dass viele Probleme sich in Luft auslösen, wenn man sich den nötigen Abstand bzw. Schlaf gönnt.
private Nachricht | Beiträge des Benutzers
Taladan
myCSharp.de - Member

Avatar #avatar-2980.jpg


Dabei seit:
Beiträge: 582
Herkunft: Osnabrück

Themenstarter:

beantworten | zitieren | melden

Werde ich mal ausprobieren
Gruß dat Tala
private Nachricht | Beiträge des Benutzers