第1章 并发与联网对象
1.1 驱动因素
1.2 并发与联网软件面临的挑战
1.2.1 挑战1:服务访问与配置
1.2.2 挑战2:事件处理
1.2.3 挑战3:并发
1.2.4 挑战4:同步
1.2.5 联网软件的其他挑战
1.3 案例研究:设计一个并发的Web服务器程序
1.3.1 JAWS框架概况
1.3.2 使用模式解决JAWS中常见的设计挑战
1.3.3 封装底层的操作系统API
1.3.4 将事件分离与连接管理同协议处理分离
1.3.5 通过多线程按比例提升服务器程序的性能
1.3.6 实现同步请求队列
1.3.7 最小化服务器程序的线程开销
1.3.8 有效利用异步I/O
1.3.9 增强服务器程序的可配置性
1.3.10 其他用于实现JAWS的模式
1.4 小结
第2章 服务访问和配置模式
2.1 Wrapper Facade
2.2 Component Configurator
2.3 Interceptor
2.4 Extension Interface
第3章 事件处理模式
3.1 Reactor
3.2 Proactor
3.3 Asynchronous Completion Token
3.4 Acceptor-Connector
第4章 同步模式
4.1 Scoped Locking
4.2 Strategized Locking
4.3 Thread-Safe Interface
4.4 Double-Checked Locking Optimization
第5章 并发模式
5.1 Active Object模式
5.2 Monitor Object模式
5.3 Half-Sync/Half-Async模式
5.4 Leader/Followers模式
5.5 Thread-Specific Storage模式
第6章 模式的综合运用
6.1 从单个模式到模式语言
6.1.1 没有模式是一座孤岛
6.1.2 模式语言的形成
6.2 面向中间件和应用程序的模式语言
6.2.1 模式语言的细节
6.2.2 模式语言之我见
6.3 并发与联网之余
6.3.1 图形用户接口
6.3.2 组件
6.3.3 通用编程
6.4 模式语言与模式系统
第7章 模式的过去、现在及未来
7.1 过去四年中模式的发展
7.1.1 模式
7.1.2 模式系统和模式语言
7.1.3 方法和工具
7.1.4 算法和数据结构
7.1.5 模式的形式化
7.2 模式的发展现状
7.3 模式的未来发展趋势
7.3.1 模式
7.3.2 模式语言
7.3.3 经验报告、方法与工具
7.3.4 模式文档
7.3.5 模式与模式语言的形式化
7.3.6 软件开发流程与组织
7.3.7 教育
7.3.8 我们的长期愿景
7.4 关于预测未来的最后一点想法
第8章 结束语
8.1 术语表
8.2 符号
8.2.1 类-职责-协作者卡片
8.2.2 UML类图
8.2.3 UML时序图
8.2.4 UML状态图
参考文献
索引
^ 收 起