Comments (3)
Take a look at this test (https://github.com/appccelerate/statemachine/blob/master/source/Appccelerate.StateMachine.Specs/Async/Transitions.cs), it shows how the state machine can be used.
And here (http://www.appccelerate.com/statemachinesample.html) you find some explanations.
You can fire an event inside an OnEntry
function, but I guess there would be a better state machine design that models the states better. A state that is left immediately is normally not a state, but part of a transition.
There are two flavours of the state machine: passive and active. The passive state machine executes a transition whenever you call Fire
on it and will block the caller until it is finished. The active state machine has an internal thread that will execute the transition, the caller is not blocked.
So you simply need to hold the instance of the state machine and make Fire
calls (don't forget to first Initialize
and then Start
).
Let me know if this helps, otherwise I'll add a sample project to the solution.
from statemachine.
Thanks for the swift reply! I'll have some time later on today to have a look at this.
I appreciate this is probably my naivety of the language, I'm seeing a lot of 'await' In the code sample that I have yet to learn fully. Thanks for your patience.
from statemachine.
from statemachine.
Related Issues (20)
- Events fire with ref or out may not be passed HOT 2
- Some questions HOT 3
- Update website documentation to use builders instead of creating state machines directly
- Cannot test application with state machine using async ExecuteOnEntry action HOT 4
- Exception handling in transition HOT 2
- Event catching weird behaviour HOT 2
- Logging documentation HOT 2
- FindOfferEntry is not answered by the server on Windows 10 HOT 1
- Q: ETA for 6.0? HOT 2
- What is supposed to happen when an event is received in the middle of a state transition? HOT 1
- .NET Standard 2.0 support HOT 1
- Saving and loading machine state HOT 3
- Process event in new state HOT 1
- Is it possible in a certain state to get a list of all next possible states? HOT 2
- Pausing HOT 1
- [Question] How to support chinese HOT 2
- Cannot open Graphml file created in YEdStateMachineReportGeneratorTest HOT 2
- Get Transitions for the current State
- Question: how to log internal changes HOT 5
- Are deferred events planned for the next release. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from statemachine.