You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For an outside observer, looking at a running BaseRunModel (i.e. the CLI or the GUI), the phases change without the observer ever knowing that it did. So polling is the only way of knowing in what phase some BaseRunModel is at any point in time. Which is bad (e.g. you poll every 1 second, phases changes multiple times within that second—information is lost).
Principally, temporal information should not be stored as mutable data on a shared object.
This is obviously a case that should be solved using a publish/subscribe type programming pattern. Everytime a BaseRunModel derived model (ESMDA, Smoother, etc), changes the phase, it should simply emit an event that the CLI/GUI subscribe to.
The text was updated successfully, but these errors were encountered:
For an outside observer, looking at a running
BaseRunModel
(i.e. the CLI or the GUI), the phases change without the observer ever knowing that it did. So polling is the only way of knowing in what phase someBaseRunModel
is at any point in time. Which is bad (e.g. you poll every 1 second, phases changes multiple times within that second—information is lost).Principally, temporal information should not be stored as mutable data on a shared object.
This is obviously a case that should be solved using a publish/subscribe type programming pattern. Everytime a
BaseRunModel
derived model (ESMDA, Smoother, etc), changes the phase, it should simply emit an event that the CLI/GUI subscribe to.The text was updated successfully, but these errors were encountered: