Go并发编程实战作 者: 郝林 著出版时间:2015丛编项: 图灵原创内容简介 《Go并发编程实战》全面介绍了Go语言的特点、安装部署环境、工程规范、工具链、语言语法、并发编程模型以及在多个编程实战中的应用,重点阐述了Go语言并发编程模型和机制。本书共分为四个部分,介绍了Go语言编程环境搭建、Go语言基础编程、Go语言并发编程方法及其原理,以及使用Go语言开发的应用系统的案例讲解。本书适用于有一定计算机编程基础的从业者以及对Go语言编程感兴趣的爱好者,非常适合作为Go语言编程进阶教程。目录第一部分 Go语言的世界第1章 初识Go语言1.1Go语言特性一瞥1.2Go语言的优劣1.3怎样学习Go语言1.4本章小结第2章 Go语言环境搭建2.1安装和设置2.1.1Linux2.1.2Windows2.2工程结构2.2.1工作区2.2.2GOPATH2.2.3源码文件2.2.4代码包2.3标准命令概述2.4本章小结第二部分 编程基础第3章 词法与数据类型3.1基本词法3.1.1标识符3.1.2关键字3.1.3字面量3.1.4类型3.1.5操作符3.1.6表达式3.2数据类型3.2.1基本数据类型3.2.2数组3.2.3切片3.2.4字典3.2.5函数和方法3.2.6接口3.2.7结构体3.2.8指针3.2.9数据初始化3.3数据的使用3.3.1赋值语句3.3.2常量与变量3.3.3可比性与有序性3.3.4类型转换3.3.5内建函数3.4本章小结第4章 流程控制方法4.1基本流程控制4.1.1代码块和作用域4.1.2if语句4.1.3switch语句4.1.4for语句4.1.5goto语句4.2defer语句4.3异常处理4.3.1error4.3.2panic和recover4.4实战演练--Set4.5实战演练--OrderedMap4.6本章小结第5章 程序测试和文档5.1程序测试5.1.1功能测试5.1.2基准测试5.1.3样本测试5.1.4测试运行记录5.1.5测试覆盖率5.2程序文档5.3本章小结第三部分 并发编程第6章 并发编程综述6.1并发编程基础6.1.1串行程序与并发程序6.1.2并发程序与并行程序6.1.3并发程序与并发系统6.1.4并发程序的不确定性6.1.5并发程序内部的交互6.2多进程编程6.2.1进程6.2.2关于同步6.2.3管道6.2.4信号6.2.5Socket6.3多线程编程6.3.1线程6.3.2线程的同步6.4多线程与多进程6.5多核时代的并发编程6.6Go语言的并发编程6.6.1线程实现模型6.6.2调度器6.6.3更多的细节6.7本章小结第7章 Goroutine和Channel7.1Goroutine的使用7.1.1go语句与Goroutine7.1.2Goroutine的运作过程7.1.3runtime包与Goroutine7.1.4HappensBefore7.2Channel7.2.1Channel是什么7.2.2单向Channel7.2.3for语句与Channel7.2.4select语句7.2.5非缓冲的Channel7.2.6time包与Channel7.3实战演练--载荷发生器7.3.1参数和结果7.3.2基本结构7.3.3初始化7.3.4启动和停止7.3.5调用器和功能测试7.4本章小结第8章 同步8.1锁的使用8.2条件变量8.3原子操作8.4只会执行一次8.5WaitGroup8.6临时对象池8.7实战演练--ConcurrentMap8.8本章小结第四部分 编程实战第9章 一个网络爬虫框架的设计和实现9.1网络爬虫与框架9.2功能需求和分析9.3总体设计9.4详细设计9.4.1基本数据结构9.4.2接口的设计9.5中间件的实现9.5.1通道管理器9.5.2实体池9.5.3停止信号9.5.4ID生成器9.6处理模块的实现9.6.1网页下载器9.6.2分析器9.6.3条目处理管道9.7调度器的实现9.7.1基本结构9.7.2主要的函数和方法9.7.3请求缓存9.7.4摘要信息的类型9.8一个使用演示9.8.1再看调度器参数9.8.2开启调度器9.8.3调度器监控函数9.9当前的不足和解决思路9.10本章小结附录Go语言的学习资源 上一篇: C++黑客编程揭秘与防范 下一篇: C++游戏编程