1、这种间接级别, 让a罕铞泱殳ctor system创建actor, 而你处理一个ActorRef object, 意味着如果你的actor崩溃, actor system可以为给定的ActorRef为创建一个新的actor。事实上, 带有 actorRef 的客户端代码甚至不知道actor已崩溃, 并且仍然可以在它正在运行的假设下发送消息。
2、如下图显示了这一点, 同时介绍了如何将值返回到调用代码。
3、此actor system有两个类。当DividingActor收到整条消蝌怦吩曰息时, 它只需将10除以接收的值。当然, 如果接收到零荑樊综鲶, 则会导致一个由零除法的 "ArithmeticException异常"。
4、默认情况下, actor不会重新启动, 尽管在这种情况下, SupervisorStrategy被定义为始终重新启动。
5、演员中的代码忘记了崩溃。它只是向演员发送消息, 并且能够接收消息, 因为它本身就是一个参与者。这种发送和接收消息的解耦允许很大的灵活性, 因为没有对结果的阻塞;返回结果时, 只需调用参与者的 onReceive 方法。
6、通过开发应用程序来处理消息处理, 而不是调用的命令式方法, 然后阻止直到您收到响应, 您可以创建响应迅速的系统。