我爱Aspx >> VC.Net >> 第6章 状态机视图图6-5 状态机
将一个状态分解成并发的多个子状态代表相互独立的并行处理过程。当进入一个并发超状态时,控制线程的数目增加;当离开一个并发超状态时,控制线程的数目减少对于每一个状态而言,并发通常依靠不同的对象实现,但是,并发子状态还可以代表一个单独状态内部的逻辑并发关系。图6-6展示了选修一门大学课程的并发分解。
图6-6 带有并发组成状态的状态机
图6-7 子机器状态
通常,可以在一个状态机中使用其他状态机的一部分,这种可重用性会带来一些方便。状态机可以命名,并可以用名字引用其他一个或多个状态机。目标状态机是一个子机器,引用这个子机器的状态叫做子机器引用状态。它的含义是在需要引用的地方用一个状态机来替换原有内容。一个状态机可以包含一个活动,即可以包含一个处理过程或一个需要消耗时间才能完成的持续过程或是可以被中断的事件,而子机器不能图6-7演示了子机器的引用。
进入一个子机器引用状态的转换会激活目标子机器的初始状态。要进入其他状态的子机器,需要在子机器引用状态中安置一个或多个桩状态。桩状态用于在子机器中标识状态。
6.1 概述
状态机视图通过对类对象的生存周期建立模型来描述对象随时间变化的动态行为。每一个对象都被看作是通过对事件进行探测并做出回应来与外界其他部分通信的独立的实体。事件表示对象可以探测到的事物的一种运动变化—如接受到从一个对象到另一个对象的调用或信号、某些值的改变或一个时间段的终结。任何影响对象的事物都可以是事件,真实世界所发生的事物的模型通过从外部世界到系统的信号来建造的。
状态是给定类的对象的一组属性值,这组属性值对所发生的事件具有相同性质的反应。换而言之,处于相同状态的对象对同一事件具有同样方式的反应,所以当给定状态下的多个对象当接受到相同事件时会执行相同的动作,然而处于不同状态下的对象会通过不同的动作对同一事件做出不同的反应。例如,当自动答复机处于处理事务状态或空闲状态时会对取消键做出不同的反应。
状态机用于描述类的行为,但它们也描述用例、协作和方法的动态行为。对这些对象方面而言,一个状态代表了执行中的一步。我们通常用类和对象来描述状态机,但是它也可以被其他元素所直接应用。
【我对这篇文章有话说?】
迎接CDMA时代吧[05-21]
第9章 物 理 视 图[05-21]
第8章 交 互 视 图[05-21]
第7章 活 动 视 图[05-21]
第4章 静 态 视 图[05-21]
第5章 用 例 视 图[05-21]
第3章 UML初览[05-21]
第2章 模型的性质与目标[05-21]
第1章 UML综述[05-21]
用Junit Framework编写单元测试[05-21]