Is there any good implementation of actors concurrency model for .net/c#?
I have to optimize a c# routine and i think that actors model fits perfectly as a solution for my problem. Unfortunately i have experience only with scala implementation.
Is there any good implementation of actors concurrency model for .net/c#?
I have to optimize a c# routine and i think that actors model fits perfectly as a solution for my problem. Unfortunately i have experience only with scala implementation.
I don't know of any implementations for C#, but there's a whole new programming language based on the Actor model by Microsoft. It's called Axum:
Axum
(previously codenamedMaestro
) is a domain specific concurrent programming language, based on the Actor model, being developed by Microsoft. It is an object-oriented language based on the .NET Common Language Runtime using a C-like syntax which, being a domain-specific language, is intended for development of portions of a software application that is well-suited to concurrency. But it contains enough general-purpose constructs that one need not switch to a general-purpose programming language (like C#) for the sequential parts of the concurrent components.
You should have a look at MS Concurrency & Coordination Runtime (CCR) and the Decentralized Software Services (DSS). You find it here: http://www.microsoft.com/ccrdss/
These frameworks would allow you develop loosely coupled services that fulfill most of the actor-approach requirements.
Axum would be the best fit, unfortinately it's still in some sort of alpha/beta phase. I use it for my research and must say that the general direction is great and it has enormous potential.
Not C# but C++ is Microsoft's Asynchronous Agents Library which gives you all the features that you need. http://msdn.microsoft.com/en-us/library/dd492627%28VS.100%29.aspx
Have a good look at http://msdn.microsoft.com/en-us/concurrency/default.aspx there are a lot of changes in the upcoming .Net 4 / VS 2010 releases!
Hope it helps!