【资源分享】Go并发编程实战(第2版)郝林 著 PDF 下载

leizhenyu · · 4121 次点击    
这是一个分享于 的资源,其中的信息可能已经有所发展或是发生改变。
# 一、下载链接 > 废话少说,先上链接: > [**点此下载**](https://download.csdn.net/download/tmt123421/11116361) > **https://download.csdn.net/download/tmt123421/11116361** > > --- > > 支持正版,正版购买链接:[点此购买](https://item.jd.com/12063141.html) # 二、内容简介 >本书首先介绍了Go语言的优秀特性、安装设置方法、工程结构、标准命令和工具、语法基础、数据类型以及流程控制方法,接着阐述了与多进程编程和多线程编程有关的知识,然后重点介绍了goroutine、channel以及Go提供的传统同步方法,最后通过一个完整实例——网络爬虫框架进一步阐述Go语言的哲学和理念,同时分享作者在多年编程生涯中的一些见解和感悟。 > 与上一版相比,本书不仅基于Go 1.8对上一版进行了全面更新,而且更深入地描绘了Go运行时系统的内部机理,并且大幅改进了示例代码。 > 本书适用于有一定计算机编程基础的从业者以及对Go语言编程感兴趣的爱好者,非常适合作为Go语言编程进阶教程。 ![images](https://img-blog.csdnimg.cn/20190415101931752.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1RNVDEyMzQyMQ==,size_16,color_FFFFFF,t_70) # 三、作者简介 > 郝林 > 从业12年有余的软件工匠,国内知名的Go语言技术布道者,Go语言北京用户组和GoHackers社群的发起人和组织者,多套免费在线Go语言教程的作者,深信Go语言在人工智能时代和机器人时代也能大放异彩的科技信徒。 # 四、目录 > 第1章 初识Go语言 1 > 1.1 语言特性 1 > 1.2 安装和设置 2 > 1.3 工程结构 3 > 1.3.1 工作区 3 > 1.3.2 GOPATH 4 > 1.3.3 源码文件 5 > 1.3.4 代码包 8 > 1.4 标准命令简述 11 > 1.5 问候程序 13 > 1.6 小结 14 > 第2章 语法概览 15 > 2.1 基本构成要素 15 > 2.1.1 标识符 15 > 2.1.2 关键字 16 > 2.1.3 字面量 17 > 2.1.4 操作符 17 > 2.1.5 表达式 19 > 2.2 基本类型 20 > 2.3 高级类型 22 > 2.3.1 数组 23 > 2.3.2 切片 23 > 2.3.3 字典 24 > 2.3.4 函数和方法 25 > 2.3.5 接口 28 > 2.3.6 结构体 29 > 2.4 流程控制 30 > 2.4.1 代码块和作用域 30 > 2.4.2 if语句 32 > 2.4.3 switch语句 32 > 2.4.4 for语句 34 > 2.4.5 defer语句 36 > 2.4.6 panic和recover 38 > 2.5 聊天机器人 40 > 2.6 小结 44 > 第3章 并发编程综述 45 > 3.1 并发编程基础 45 > 3.1.1 串行程序与并发程序 46 > 3.1.2 并发程序与并行程序 46 > 3.1.3 并发程序与并发系统 47 > 3.1.4 并发程序的不确定性 47 > 3.1.5 并发程序内部的交互 47 > 3.2 多进程编程 48 > 3.2.1 进程 48 > 3.2.2 关于同步 55 > 3.2.3 管道 60 > 3.2.4 信号 65 > 3.2.5 socket 74 > 3.3 多线程编程 97 > 3.3.1 线程 98 > 3.3.2 线程的同步 107 > 3.4 多线程与多进程 125 > 3.5 多核时代的并发编程 126 > 3.6 小结 130 > 第4章 Go的并发机制 131 > 4.1 原理探究 131 > 4.1.1 线程实现模型 132 > 4.1.2 调度器 142 > 4.1.3 更多细节 158 > 4.2 goroutine 160 > 4.2.1 go语句与goroutine 160 > 4.2.2 主goroutine的运作 166 > 4.2.3 runtime包与goroutine 166 > 4.3 channel 169 > 4.3.1 channel的基本概念 169 > 4.3.2 单向channel 180 > 4.3.3 for语句与channel 184 > 4.3.4 select语句 185 > 4.3.5 非缓冲的channel 190 > 4.3.6 time包与channel 192 > 4.4 实战演练:载荷发生器 198 > 4.4.1 参数和结果 199 > 4.4.2 基本结构 201 > 4.4.3 初始化 206 > 4.4.4 启动和停止 212 > 4.4.5 调用器和功能测试 221 > 4.5 小结 231 > 第5章 同 步 232 > 5.1 锁的使用 232 > 5.1.1 互斥锁 232 > 5.1.2 读写锁 236 > 5.1.3 锁的完整示例 238 > 5.2 条件变量 244 > 5.3 原子操作 247 > 5.3.1 增或减 247 > 5.3.2 比较并交换 249 > 5.3.3 载入 250 > 5.3.4 存储 251 > 5.3.5 交换 251 > 5.3.6 原子值 252 > 5.3.7 应用于实际 256 > 5.4 只会执行一次 257 > 5.5 WaitGroup 258 > 5.6 临时对象池 262 > 5.7 实战演练——Concurrent Map 265 > 5.8 小结 280 > 第6章 网络爬虫框架设计和实现 281 > 6.1 网络爬虫与框架 281 > 6.2 功能需求和分析 283 > 6.3 总体设计 284 > 6.4 详细设计 286 > 6.4.1 基本数据结构 286 > 6.4.2 接口的设计 293 > 6.5 工具的实现 309 > 6.5.1 缓冲器 309 > 6.5.2 缓冲池 311 > 6.5.3 多重读取器 317 > 6.6 组件的实现 318 > 6.6.1 内部基础接口 319 > 6.6.2 组件注册器 321 > 6.6.3 下载器 323 > 6.6.4 分析器 325 > 6.6.5 条目处理管道 328 > 6.7 调度器的实现 329 > 6.7.1 基本结构 329 > 6.7.2 初始化 331 > 6.7.3 启动 333 > 6.7.4 停止 343 > 6.7.5 其他方法 344 > 6.7.6 总结 345 > 6.8 一个简单的图片爬虫 346 > 6.8.1 概述 346 > 6.8.2 命令参数 346 > 6.8.3 初始化调度器 348 > 6.8.4 监控调度器 354 > 6.8.5 启动调度器 364 > 6.9 扩展与思路 365 > 6.10 本章小结 368 > 附录A Go语言的学习资源 369 --- **——2019-04-15——**

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

4121 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传