How to restrict actor messages to specific types?

Then you’d have to encode the message type into the Actor ref, which would drastically decrease the value of something like the ActorRegistry.

Also, with powerful mechanics like “become” (which is fundamental to the actor model) typing the messages is less valuable.

Since Akka doesn’t leak memory when a message is not matched to the current behavior, there is not the same risk of sending the “wrong” messages to the “wrong” actor.

Also, Actors are by nature dynamic, so if you want to make them static, use TypedActor (which is not RPC, it’s just as RPC as regular actors, void methods are ! calls, Future return type is !!! and other return types are based on !!)

The common practice is to declare what messages an Actor can receive in the companion object of the Actor, which makes it very much easier to know what it can receive.

Does that help?

Leave a Comment