课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
角色是程序员在学习软件编程开发技术需要经常接触到的一个概念,下面我们就通过案例分析来了解一下,软件开发角色应用都有哪些注意事项。
1、状态
角色对象通常都包含一些变量来表明它当下处于哪个状态。这些变量可以是显示的状态机(例如,使用fsm-scala模型),也可以是一个计数器,一组监听器,甚至等待挂起等。正是这些状态数据使得角色有价值,因此必须保护它们不被其他的角色破坏。好消息是从概念上来讲每个Akka角色对象都有它自己的轻量级线程,而这个线程是与系统的其他部分完全隔离的。这也就意味着你可以放心大胆的写你的角色代码而不用考虑并发的同步问题。
2、行为
每次消息的处理都会与角色当前的行为所匹配。行为指的是一个函数定义的在当前状态下对一条消息所要采取的行动。例如如果这个客户端是经过认证的则转发它的请求,否则拒绝。并且行为可能随着时间的不同而变化,例如,某些客户端可能在后来获得了认证,或者角色先在“不在服务状态”的模式后来又恢复服务了等等。这些变化可能是因为状态变量的变化引起的,也可能是函数在运行时被换出引起的,参考become和unbecome操作。然而,角色对象重启后都会恢复到构造函数中初始化的行为。
3、监督者策略
角色后一个功能是处理子角色的故障。故障处理对于用户来说是透明的,对于发生的故障Akka都会自动的通过对应策略处理(监管和监测章节介绍)。因为这些策略是构成角色系统的基础,所以一旦角色被创建那么这些故障处理策略将不可改变。
由于每个角色都只有一类故障处理策略,这也就意味着不同的子角色将会应用不同的策略。角色根据子角色所使用的故障处理策略将它们分组。根据任务被切分的子任务性质系统会不断的重复这个分组过程。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。