The ACE Programmer’s Guide:Practical Design Patterns for Network and Systems Programming
副标题:无
作 者:(美)Stephen D.Huston等著;马维达译
分类号:
ISBN:9787508327341
微信扫一扫,移动浏览光盘
简介
[font color="#ff6600"]·本书评语[/font]
可移植、灵活、可扩展、可预测、可靠、可负担——如果你正在设计这样的软件和系统,本书及ace工具包将使得你在所有这些方面都变得更为得力。即使是用了十余年时间开发ace,并用它构建了许多网络化软件应用之后,我发现我还是在这本书中学到了许多东西。我深信,你同样了会如此。
——douglas c.schmidt,ace的发明者,录自本书前言
这是每一个ace程序员的必备书籍。对于初学者而言,本书循序渐进地解释了ace的入门之道。对于更有经验的程序员而言,它详细解释了每天都要使用的特性,同时它也是一本完美的参考手册。如果这本书早几年面世,我就会节省大量时间!
——johnny willemsen,荷兰remedy it公司高级软件工程师
在拥有大型的c++代码库后,我们依靠ace来建立跨平台的客户——服务器框架,以保证数据的质量和完整性。ace改善了我们的设计,消除了os的各种特异行为,而又没有牺牲性能或灵活性。对我们而言,ace的在线参考资料和印刷出版的“大图景(big picture)”指南是不可缺少的助手,而在我的办公室的书架上,这本书占据了最优先的位置。
——john lilley,datalevercorporation首席科学家
在sita空——地部门中,我们是为航空公司提供通信服务的主要供应者之一。我们在大约一年前开始使用ace,现在正在把大部分新的与通信有关的开发工作移向ace。可以说,在开发我们这种类型的应用时,这个工具包能减少至少50%的开发和测试时间。
——jean millo,sita高级架构师
adaptive communication environment(ace)是一个开放源码软件工具包,可以帮助你应对网络编程中的各种挑战。ace用c++编写而成,在30位核心开发者和1700位做出贡献的开发者的努力下,这个可移植的中间件已经演化成了一个强大的工具包,封闭并增强了广泛的原生os功能,从而能用于开发性能驱动的软件系统。
本书是一本实用的ace指南,其读者对象是构建网络化应用和下一代中间件的c++程序员。本书首先向初学者介绍ace,然后阐释怎样选择设计模式、框架以及ace,用最少的时间和努力生产出有效的、易于维护的软件系统。本书着重讨论了各种编程辅助手段、进程间能信(ipc)问题、进程及线程管理、共享内存、ace service configurator、定时器管理类、ace naming service以及其他更多内容。
目录
译者序
序
前言
第1部分 ACE基础知识
第1章 ACE简介
1.1 ACE的历史
1.2 ACE的优势
1.3 ACE的组织结构
1.4 模式、类库和框架
1.5 把你的代码移植到多种操作系统
1.6 消除C++编译器之间的差异
1.7 同时使用窄字符和宽字符
1.8 到哪里寻求更多的信息和支持
1.9 小结
第2章 怎样构建ACE并在你的程序中使用它
2.1 关于ACE版本的说明
2.2 ACE Distribution指南
2.3 怎样构建ACE
2.4 怎样在你的应用中包含ACE
2.5 怎样构建你的应用
2.6 小结
第3章 使用ACE日志设施
3.1 基本的日志记录和跟踪
3.2 启用和禁用日志严重级别
3.3 定制ACE日志宏
3.4 重定向日志输出
3.5 使用回调
3.6 日志客户和服务器看守
3.7 LogManager类
3.8 通过ACE日志策略进行运行时配置
3.9 小结
第4章 收集运行时信息
4.1 命令行参数和ACE_Get_Opt
4.2 访问配置信息
4.3 构建参数向量
4.4 小结
第5章 ACE容器
5.1 容器的概念
5.2 序列容器
5.3 关联容器
5.4 分配器
5.5 小结
第2部分 进程间通信
第6章 基本的TCP/IP Socket用法
6.1 一个简单客户
6.2 给客户增加健壮性
6.3 构建一个服务器
6.4 小结
第7章 处理事件及多个I/O流
7.1 Reactor框架总览
7.2 处理多个I/O源
7.3 信号
7.4 通知
7.5 定时器
7.6 使用Acceptor-Connector框架
7.7 反应器实现
7.8 小结
第8章 异步I/O与ACE Proactor框架
8.1 为何使用异步I/O?
8.2 怎样发送和接收数据
8.3 建立连接
8.4 ACE_Proactor完成多路分离器
8.5 使用定时器
8.6 其他I/O工厂类
8.7 结合Reactor与Proactor框架
8.8 小结
第9章 其他IPC类型
9.1 基于UDP/IP的主机间IPC
9.2 主机内通信
9.3 小结
第3部分 进程与线程管理
第10章 进程管理
10.1 派生新进程
10.2 使用ACE_Process_Manager
10.3 使用ACE_Process_Mutex进行同步
10.4 小结
第11章 信号
11.1 使用包装
11.2 事件处理器
11.3 保护临界区
11.4 通过反应器管理信号
11.5 小结
第12章 基本的多线程编程
12.1 入门
12.2 基本的线程安全性
12.3 任务间通信
12.4 小结
第13章 线程管理
13.1 线程的类型
13.2 优先级与调度类
13.3 线程池
13.4 使用ACE_Thread_Manager进行线程管理
13.5 信号
13.6 线程启动挂钩
13.7 取消
13.8 小结
第14章 线程安全与同步
14.1 保护原语
14.2 线程同步
14.3 线程专有存储
14.4 小结
第15章 主动对象
15.1 模式
15.2 模式使用
15.3 小结
第16章 线程池
16.1 理解线程池
16.2 半同步/半异步模型
16.3 领导者/跟随者模型
16.4 线程池与反应器
16.5 小结
第4部分 ACE高级特性
第17章 共享内存
17.1 ACE_Malloc与ACE_Allocator
17.2 ACE_Malloc的持久功能
17.3 与位置无关的分配
17.4 用于容器的ACE_Malloc
17.5 包装
17.6 小结
第18章 ACE Streams框架
18.1 综述
18.2 使用单向流
18.3 双向流
18.4 小结
第19章 ACE Service Configurator框架
19.1 综述
19.2 配置静态服务
19.3 设置动态服务
19.4 设置流
19.5 在执行过程中重新配置服务
19.6 使用XML配置服务与流
19.7 不用svc.conf配置服务
19.8 单体与服务
19.9 小结
第20章 定时器
20.1 定时器概念
20.2 定时器队列
20.3 预先构建的分派器
20.4 管理事件处理器
20.5 小结
第21章 ACE Naming Service
21.1 ACE_Naming_Context
21.2 单进程命名上下文:PROC_LOCAL
21.3 在一个节点上共享命名上下文:NODE_LOCAL
21.4 在网络上共享命名上下文:NET_LOCAL
21.5 小结
参考书目
序
前言
第1部分 ACE基础知识
第1章 ACE简介
1.1 ACE的历史
1.2 ACE的优势
1.3 ACE的组织结构
1.4 模式、类库和框架
1.5 把你的代码移植到多种操作系统
1.6 消除C++编译器之间的差异
1.7 同时使用窄字符和宽字符
1.8 到哪里寻求更多的信息和支持
1.9 小结
第2章 怎样构建ACE并在你的程序中使用它
2.1 关于ACE版本的说明
2.2 ACE Distribution指南
2.3 怎样构建ACE
2.4 怎样在你的应用中包含ACE
2.5 怎样构建你的应用
2.6 小结
第3章 使用ACE日志设施
3.1 基本的日志记录和跟踪
3.2 启用和禁用日志严重级别
3.3 定制ACE日志宏
3.4 重定向日志输出
3.5 使用回调
3.6 日志客户和服务器看守
3.7 LogManager类
3.8 通过ACE日志策略进行运行时配置
3.9 小结
第4章 收集运行时信息
4.1 命令行参数和ACE_Get_Opt
4.2 访问配置信息
4.3 构建参数向量
4.4 小结
第5章 ACE容器
5.1 容器的概念
5.2 序列容器
5.3 关联容器
5.4 分配器
5.5 小结
第2部分 进程间通信
第6章 基本的TCP/IP Socket用法
6.1 一个简单客户
6.2 给客户增加健壮性
6.3 构建一个服务器
6.4 小结
第7章 处理事件及多个I/O流
7.1 Reactor框架总览
7.2 处理多个I/O源
7.3 信号
7.4 通知
7.5 定时器
7.6 使用Acceptor-Connector框架
7.7 反应器实现
7.8 小结
第8章 异步I/O与ACE Proactor框架
8.1 为何使用异步I/O?
8.2 怎样发送和接收数据
8.3 建立连接
8.4 ACE_Proactor完成多路分离器
8.5 使用定时器
8.6 其他I/O工厂类
8.7 结合Reactor与Proactor框架
8.8 小结
第9章 其他IPC类型
9.1 基于UDP/IP的主机间IPC
9.2 主机内通信
9.3 小结
第3部分 进程与线程管理
第10章 进程管理
10.1 派生新进程
10.2 使用ACE_Process_Manager
10.3 使用ACE_Process_Mutex进行同步
10.4 小结
第11章 信号
11.1 使用包装
11.2 事件处理器
11.3 保护临界区
11.4 通过反应器管理信号
11.5 小结
第12章 基本的多线程编程
12.1 入门
12.2 基本的线程安全性
12.3 任务间通信
12.4 小结
第13章 线程管理
13.1 线程的类型
13.2 优先级与调度类
13.3 线程池
13.4 使用ACE_Thread_Manager进行线程管理
13.5 信号
13.6 线程启动挂钩
13.7 取消
13.8 小结
第14章 线程安全与同步
14.1 保护原语
14.2 线程同步
14.3 线程专有存储
14.4 小结
第15章 主动对象
15.1 模式
15.2 模式使用
15.3 小结
第16章 线程池
16.1 理解线程池
16.2 半同步/半异步模型
16.3 领导者/跟随者模型
16.4 线程池与反应器
16.5 小结
第4部分 ACE高级特性
第17章 共享内存
17.1 ACE_Malloc与ACE_Allocator
17.2 ACE_Malloc的持久功能
17.3 与位置无关的分配
17.4 用于容器的ACE_Malloc
17.5 包装
17.6 小结
第18章 ACE Streams框架
18.1 综述
18.2 使用单向流
18.3 双向流
18.4 小结
第19章 ACE Service Configurator框架
19.1 综述
19.2 配置静态服务
19.3 设置动态服务
19.4 设置流
19.5 在执行过程中重新配置服务
19.6 使用XML配置服务与流
19.7 不用svc.conf配置服务
19.8 单体与服务
19.9 小结
第20章 定时器
20.1 定时器概念
20.2 定时器队列
20.3 预先构建的分派器
20.4 管理事件处理器
20.5 小结
第21章 ACE Naming Service
21.1 ACE_Naming_Context
21.2 单进程命名上下文:PROC_LOCAL
21.3 在一个节点上共享命名上下文:NODE_LOCAL
21.4 在网络上共享命名上下文:NET_LOCAL
21.5 小结
参考书目
The ACE Programmer’s Guide:Practical Design Patterns for Network and Systems Programming
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
亲爱的云图用户,
光盘内的文件都可以直接点击浏览哦
无需下载,在线查阅资料!