Otto UML
2014-11-15 12:24:32 101 举报
Otto UML是一种用于设计和建模软件系统的可视化工具。它提供了一种标准化的符号语言,使开发人员能够以图形方式表示系统的不同方面,包括类、对象、关系、交互和流程等。通过使用Otto UML,开发人员可以更好地理解系统的结构和行为,并与其他团队成员进行有效的沟通和协作。此外,Otto UML还支持代码生成和反向工程,可以将UML模型转换为可执行的代码或从现有代码中提取UML模型。总之,Otto UML是一种强大而灵活的工具,可以帮助开发人员提高生产力并确保软件项目的成功交付。
作者其他创作
大纲/内容
Bus
isDispatching
T2
HandlerFinder
eventsToDispatch
提供了Publish-Subscribe Style的通信机制,订阅者通过将自己注册到Bus中,可以接收到已注册的发布者的事件,不同组件无需知道对方的存在,形成了松耦合的关系。
Bus里面的eventsToDispatch和isDispatching是TLS,局部于每个线程。即每个线程都有一个待分发事件队列,由每个线程负责分发自己post到自己队列里面的事件,EventPoster == EventDispatcher。
ThreadLocalStorage
Bus (Singleton)
Bus.getInstance().register(me);Bus.getInstance().post(someEvent);
EventHandler
- target : Object- method : Method- hashCode : int
+ isValid() : boolean+ invalidate() : void+ handleEvent(Object) : void+ hashCode() : int+ equals(Object) : boolean
封装了一个Handler Method,负责消费事件
producersByType
T1
ThreadEnforcer
概览:HandlerFinder负责获取一个类的所有注解为@Subscriber和@Produce的方法;ThreadEnforcer负责执行线程的限制策略,如可将Bus限制为只能在主线程执行;
handlersByType
封装了一个Producer Method,负责生产事件
Process Virtual Address Space
EventProducer
+ isValid() : boolean+ invalidate() : void+ produceEvent() : Object+ hashCode() : int+ equals(Object) : boolean
线程模型
0 条评论
下一页