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

来源:互联网 发布:董洁的冷清秋知乎 编辑:程序博客网 时间:2024/04/30 09:50
第一次翻译,希望大家多多指正

实战出精华
Boost.Asio C++ 网络编程
用具体的C++网络编程例子来提升你的技能
John Torjan


用具体的C++网络编程例子来提升你的技能
Copyright © 2013 Packt Publishing
版权所有,除了在鉴定文章或者评论中进行简单引用,如果没有经过出版者事先的书面授权,该书的任何部分都不能被转载、存储在检索系统中、或者以任何形式和方式传阅。
在这本书准备发行之前,我们已经尽我们最大的努力去保证书中信息的准确性。但是,这本书中包含的明示或者暗示的信息都没有保证。无论是本书作者、Packt Publishing以及它的经销商和分销商都不承担由这本书直接或者间接造成的任何损害。
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
        总结
索引

3 0