actor-model

Actor Model advantages to shared state

I'm reading about the Actor Model for a presentation and everyone claimes that it is superior to shared state parallel programming because it avoids many pitfalls like deadlocks and race conditions. I'm asking myself what the specifics of this claims are. If it avoids these problems, how does it do it? ...

When should one use actors to solve a concurrency problem?

I have been looking at the Actor Model for a while now. To me it seems to be just another approach towards concurrent programming with its own upsides and downsides. It certainly does not guarantee deadlock-free environment. A can wait for a message from B while B waits for a message from A. I don't know if we can say the actors approac...

How can I get around my "object reference" problem when passing messages to an actor?

A while back I put together a simple class named Actor that was my implementation of the Actor Model. Since then I've used it with great success (Minus some annoying workarounds for the lack of a discriminated union type.). I am left with an issue that I am unsure of how to resolve without making the class clunky and slow. When someone ...

Which Actor model library/framework for Java?

There are so many different Actor model implementations for Java (and the JVM languages). A lot of Actor libraries and frameworks have been implemented to permit Actor-style programming in Java (which doesn't have Actors built-in). I think the Actor model has big advantages, but the choices for Java are overwhelming! Can someone post t...

Zero-copy message-passing on the JVM

A faithful implementation of the actor message-passing semantics would mean that message contents are deep-copied from a logical point-of-view, even for immutable types. Deep-copying of message contents remains one the biggest bottlenecks for naïve implementations the actor model, so some implementations (ie. Kilim) support zero-copy mes...

Performance of message-passing in the Actor model

I've seen benchmarks of Actor model implementations done in terms of their actors. For example, Akka actors are very lightweight (600 bytes per actor) and millions of them can be created. However, I've never seen a benchmark done in terms of message-passing throughput. For example, given some number of actors, how many messages can pass...

How is the Actor Model working compared to threads?

Is there any good and short explanation of how the Actor Model is working compared to threads? Can't a thread be seen as an actor and send messages to other threads? I see some difference, but it's not that clear for me. Can I use the Actor Model in any language by using threads differently? ...