1. 软件片段的架构是一套控制软件操作的规则、模式、进程、执行协议和断言。
多线程架构:一种将工作模式分解为两个或更多并发执行现场的软件架构。
分解软件:分割为单独逻辑任务的过程,供软件的工作模式来执行。由于软件的数据组织和执行流程依赖于对应的并发或并行化模型的可用性。
2.算法基本执行单元:一条语句(或子语句)
进程执行基本单元:线程(thread)
最大执行单元:对话(session)
多线程:一个进程内有两个或更多线程并发执行
并行算法:一个线程内包含一条或多条并发执行的指令,这些指令共同形成一个算法,多线程架构被分解成线程,并行算法被分解成单挑指令。当讨论并行算法时,所讨论单元指单条指令或子指令;当讨论多线程时,所讨论单元指包含一套指令的逻辑任务,以过程或函数的形式出现。并行算法面对并发的微观方面,多线程面对并发的宏观方面。
3.多线程常见架构三种:
(1)客户机/服务器:DDE动态数据交换。单个DDE代理可能既是客户机也是服务器,消息系统完成。
网络环境中常见客户机/服务器模型应用:文件服务器、数据库服务器、事务服务器、应用服务器、逻辑服务器
(2)事件驱动编程(GUI)
(3)黑板(blackboard)
4.类层次:一些通过继承相关联的类的集合。表示一个人物、地点、事件或思想的逻辑家族,也可以包含其他类作为数据成员。
常见类类型:抽象基类、具体类、节点类、接口类、容器和集合类、应用框架类、域类。
5.抽象基类:为后代提供蓝图,不能声明实例,必须首先从基类派生一个新类,并为抽象类中声明的所有纯虚函数提供实际