Stact
An actor-lib on .Net. Quite competent and well tested. The foundation of TopShelf, MassTransit and NServiceBus.Host.
https://github.com/phatboyg/stact
Contains the abstractions:
- Workflow, allowing complex state-driven protocols to be defined and executed
- Channels, to support message passing between objects
- Actors, both typed and anonymous
- Fibers, a cooperative threading model
- Routing
- Request/Reply
- Schedulers
Upcoming:
- Proper supervisor hierarchies
Being actively developed at the time of writing by Chris.
Overview:
Developing concurrent applications requires an approach that departs from current software development methods, an approach that emphasizes concurrency and communication between autonomous system components. The actor model defines a system of software components called actors that interact with each other by exchanging messages (instead of calling methods on interfaces in an object-oriented design), producing a system in which data (instead of control) flows through components to meet the functional requirements of the system.
Stact is a library for building applications using the actor model in .NET. The main assembly, Stact.dll, is the actor library and includes everything needed to use the actor model in any type of application. There are also additional supporting frameworks, such as Stact.ServerFramework, that can be used to expose actors via sockets or HTTP, allowing services to be built using actors.