Actor Oriented Design Patterns: Difference between revisions
Drjdpowell (talk | contribs) |
Category reorg |
||
Line 39: | Line 39: | ||
[https://en.wikipedia.org/wiki/Actor_model Wikipedia: Actor_model] | [https://en.wikipedia.org/wiki/Actor_model Wikipedia: Actor_model] | ||
[[Category:Design | [[Category:Actor Oriented Design Patterns]] | ||
Revision as of 20:59, 2 June 2020
Actor Oriented Design Patterns are software patterns that utilize the Actor Model (for example Actor Framework). Actors are a powerful tool when creating large, highly parallelized, scalable systems in LabVIEW.
Actor Framework Designs
The Actor Framework is a powerful tool there are many aspects to how it can be implemented. Below are three Actor Oriented Design Patterns implemented with the Actor Framework. These resemble their non Object-Oriented counterparts, see Design Patterns, where these are an implementation of a single actor. There real power lies in multiple Actors working together. These patterns are:
- State Machine Actor
- Queued State Machine Actor
- Queued Message Handler Actor
State Machine Actor
The State Machine Actor (SMA) is completely implemented in Messages, it does not override the Actor Core. It sends the first Message on Pre Launch Init Method. Each subsequent Message sends the next Message in the state.
Because it doesn't override the Actor Core the pattern does not have a UI of its own. It could be paired with another Actor that implements the UI and sends Messages to it to update UI elements. The paired Actor would follow one of the other patterns. See more about the State Machine Actor (SMA) Design Pattern.
Queued State Machine Actor
More to come.
Queued Message Handler Actor
More to come
Other Actor Implementation Designs
LabVIEW Tools Network Addons:
Some Actor implementations in other languages:
Articles
"Actor Framework is not as hard as you think and here is why…" - by Quentin "Q" Alldredge, Q Software Innovations, LLC
If you are familiar with the Queued Message Handler (QMH) Design Pattern and Object-Oriented Programming (OOP) then you already know everything you need to start with Actor Framework. The purpose of this article is to show the parts of the Actor Framework that are comparable to the QMH Design Pattern and provide a step-by-step procedure for converting a QMH project to an Actor Framework project.