Example Implementation of the Active State Machine pattern in .NET.
An Active State Machine is a state machine that performs transitions on a different thread as the code calling the state machine. This allows for multiple threads calling it via a synchronization queue.
- This implementation takes use of the Task Parallel Library (TPL) to allow input from multiple threads.
- The state machine handles messages internally using Reactive Extensions (Rx).
- Fody is used for Aspects
- NLog is used for logging