AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Kontrollflussarchitektur bei Ereignissen: Geschmackssache?!?
Thema durchsuchen
Ansicht
Themen-Optionen

Kontrollflussarchitektur bei Ereignissen: Geschmackssache?!?

Ein Thema von BrightAngel · begonnen am 7. Feb 2017 · letzter Beitrag vom 8. Feb 2017
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.016 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#11

AW: Kontrollflussarchitektur bei Ereignissen: Geschmackssache?!?

  Alt 8. Feb 2017, 16:22
Das Hauptproblem, was ich mit der unmittelbaren Verarbeitung eines Eventhandlers sehe, ist, dass möglicherweise die UI "einfriert", sollte das Event abarbeiten etwas länger dauern.
In solchen Fällen würde ich die Abarbeitung aber lieber asynchron durchführen (thread), um möglichst schnell wieder aus dem Event Trigger zurückzukehren.

Somit kannst du beide Fälle mit einem Modell abarbeiten ohne dir explizit irgendwelche States zu merken oder das ganze Eventsystem aufzublasen.

Alternativ schraubst du in deine Listener nen event/message bus und lässt den die Arbeit asynchron/verzögert erledigen.
Dort können dann auch doppelte Events ausgefiltert werden im Sinne von, ich muss nich erst das Event von "hat sich auf 3x9 geändert" feuern, wenn danach noch eins für "hat sich auf 2x9 geändert" in der Queue liegt.

In Frameworks with ReactiveX (leider gibts da *noch* keine Implementierung für Delphi) gibts da z.B. verschiedene Möglichkeiten für.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie ( 8. Feb 2017 um 16:27 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:55 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz