Boost.Asio c++ 网络编程翻译(1)

第一次翻译,希望大家多多指正

实战出精华

Boost.Asio C++ 网络编程

用具体的C++网络编程例子来提升你的技能

John Torjan

用具体的C++网络编程例子来提升你的技能

Copyright 2013 Packt Publishing

版权所有,除了在鉴定文章或者评论中进行简单引用,如果没有经过出版者事先的书面授权,该书的任何部分都不能被转载、存储在检索系统中、或者以任何形式和方式传阅。

在这本书准备发行之前,我们已经尽我们最大的努力去保证书中信息的准确性。但是,这本书中包含的明示或者暗示的信息都没有保证。无论是本书作者、PacktPublishing以及它的经销商和分销商都不承担由这本书直接或者间接造成的任何损害。

Packt Publishing将尽最大努力,用适当的大写字母来对书中提到的所有公司和产品进行商标标识。但是,Packt Publishing不能保证这些信息的准确性。

第一版发布:2013年1月

产品编号:1120213

由Packt Publishing Ltd.发布

工作人员

作者:John Torjo

协调人:Sherin Padayatty

评审:Béla Tibor Bartha、Nicolae Ghimbovschi

校对:Claire Cresswell-Lane

组稿编辑:Erol Staveley

索引编制:Monica Ajmera Mehta

责任编辑:Ameya Sawant

图像处理:Valentina D’silva、Aditi Gajjar

技术编辑:Kaustubh S. Mayekar

协调出版:Conidon Miranda

封面:Conidon Miranda

关于作者

做为一个权威的C++专家,在John Torjo超过15年的编程生涯中,他大部分的时间都用在了C++上。偶尔,他也用C#和Java写程序。

他也很喜欢在C++ Users Journal和其他杂志上写一些关于编程的文章。

闲暇时光,他喜欢打扑克、开快车。他有很多自由职业,其中有一个就把他对扑克和编程爱好结合起来。你可以通过john.code@torjo.com联系他。

----------------------------------------------------------------------------------------------------------

我要感谢我的朋友Alexandru Chis, Aurelian Hale, Bela Tibor Bartha, Cristian Fatu, Horia Uifaleanu, Nicolae Ghimbovschi以及Ovidiu Deac对本书提出的反馈和意见。同时我也要感谢Packt各位的理解,即使我时不时地错过一些截稿日期。然后最需要感谢的是Chris Kohlhoff,Boost.Asio的作者,是他写出了一个如此伟大的库。

把这本书献给我最好的朋友Darius。

----------------------------------------------------------------------------------------------------------

关于评审员

Béla Tibor Bartha

一个用各种技术和语言进行工作的专业软件工程师。尽管在过去的4年里,他做的是iOS和OSX应用开发,但是C++陪伴他度过了他早期个人游戏开发项目的激情岁月。

----------------------------------------------------------------------------------------------------------

我要感谢John,因为他我才能做这本书的评审

----------------------------------------------------------------------------------------------------------

Nicolae Ghimbovschi

一个参加各种各样的C++项目超过5年的天才个人开发者。他主要参与一些企业的通信工程的项目。他是一个狂热的Linux爱好者,他喜欢利用不同的操作系统、脚本工具、编程语言上进行测试和实验。除了编程,他还喜欢骑自行车、瑜伽和冥想。

----------------------------------------------------------------------------------------------------------

我要感谢John让我来评审这本书

----------------------------------------------------------------------------------------------------------

目录

前言

第一章:Boost.Asio入门

什么是Boost.Asio?

历史

依赖

编译 Boost.Asio

重要的宏

同步VS异步

异常VS错误代码

Boost.Asio中的多线程

不仅仅是网络

Timers

io_service类

第二章:Boost.Asio基本原理

网络API

Boost.Asio命名空间

IP地址

端点

Sockets

同步错误代码

Socket成员函数

其他注意事项

read/write/connect自由函数

connect函数

read/write函数

异步编程

为什么要异步?

异步run(),run_one(),poll(),poll_one()

一直运行

run_one(),poll(),poll_one()函数

异步工作

异步post() VS dispatch() VS wrap()

保持运行

总结

第三章:回显服务端/客户端

TCP回显服务端/客户端

TCP同步客户端

TCP同步服务端

TCP异步客户端

TCP同步服务端

代码

UDP回显服务端/客户端

UDP同步回显客户端

UDP同步回显服务端

总结

第四章:客户端和服务端

同步客户端/服务端

同步客户端

同步服务端

异步客户端/服务端

异步客户端

异步服务端

总结

第五章:同步VS异步

同步异步混合编程

客户端和服务端之间消息的互相传递

客户端软件中的同步I/O

服务端软件中的同步I/O

同步服务端中的线程

客户端软件中的异步I/O

服务端软件中的异步I/O

异步服务端中的线程

异步操作

代理实现

总结

第六章:Boost.Asio-其他特性

std streams和std buffer I/O

Boost.Asio和STL流

streambuf类

处理streambuf对象的自由函数

协程

总结

第七章:Boost.Asio-进阶

Asio VS Boost.Asio

调试

处理程序跟踪信息

例子

处理程序跟踪文件

SSL

Boost.Asio的Windows特性

流处理

随机存储处理

对象处理

Boost.Asio的POSIX特性

本地sockects

连接本地sockets

POSIX文件描述符

Fork

总结

索引

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值