搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
深入理解Go语言/计算机技术开发与应用丛书
0.00     定价 ¥ 119.00
图书来源: 浙江图书馆(由浙江新华配书)
此书还可采购23本,持证读者免费借回家
  • 配送范围:
    浙江省内
  • ISBN:
    9787302613664
  • 作      者:
    编者:刘丹冰|责编:赵佳霓
  • 出 版 社 :
    清华大学出版社
  • 出版日期:
    2023-04-01
收藏
内容介绍
本书详细讲解在学习Go语言必经之路中的重点知识,采用大量精美详细的图文进行介绍,内容讲解深入浅出,极大地降低了理解Go语言底层精髓的学习门槛。 本书共分为3篇:第一篇(第1~4章)深入讲解Go语言中GPM模型、Go语言垃圾回收中的GC三色标记法与混合写屏障、Go语言内存管理模型、网络I/O复用并发模型等;第二篇(第5~12章)为Go语言实战中需要进阶的知识盲区介绍;第三篇(第13~21章)为基于Go语言从0到1实现轻量级网络服务框架Zinx及相关应用案例。 本书主要面向的读者是已经具有软件编程开发经验的工程师、系统开发工程师、期望(由Python、PHP、C/C++、Ruby、Java等编程语言)转职到Go语言开发的后端工程师、期望深入理解Go语言特性的计算机软件学者等。
展开
目录
第一篇 Go语言修炼必经之路
第1章 深入理解Go语言协程调度器GPM模型
1.1 Go语言“调度器”的由来
1.1.1 单进程时代不需要调度器
1.1.2 多进程/多线程时代的测度器需求
1.1.3 协程提高CPU的利用率
1.1.4 Go语言的协程Goroutine
1.1.5 被废弃的Goroutine调度器
1.2 Go语言调度器GPM模型的设计思想
1.2.1 GPM模型
1.2.2 调度器的设计策略
1.2.3 go func()调度流程
1.2.4 调度器的生命周期
1.2.5 可视化GPM编程
1.3 Go调度器调度场景过程全解析
1.3.1 场景1:G1创建G2
1.3.2 场景2:G1执行完毕
1.3.3 场景3:G2开辟过多的G
1.3.4 场景4:G2本地满再创建G7
1.3.5 场景5:G2本地未满再创建G8
1.3.6 场景6:唤醒正在休眠的M
1.3.7 场景7:被唤醒的M2从全局队列批量取G
1.3.8 场景8:M2从M1中偷取
1.3.9 场景9:自旋线程的最大限制
1.3.10 场景10:G发生阻塞的系统调用
1.3.11 场景11:G发生非阻塞的系统调用
1.4 小结
第2章 Go语言混合写屏障的GC全场景分析
2.1 Go V1.3标记-清除算法
2.1.1 标记清除(Mark and Sweep)算法的详细过程
2.1.2 标记清除算法的缺点
2.2 Go V1.5的三色标记法
2.2.1 三色标记法的过程
2.2.2 没有STW的三色标记法
2.2.3 触发三色标记法不安全的必要条件
2.3 Go V1.5的屏障机制
2.3.1 “强-弱”三色不变式
2.3.2 插入屏障
2.3.3 删除屏障
2.4 Go V1.8的混合写屏障
2.4.1 混合写屏障(Hybrid Write Barrier)规则
2.4.2 场景1:堆删除引用,成为栈下游
2.4.3 场景2:栈删除引用,成为栈下游
2.4.4 场景3:堆删除引用,成为堆下游
2.4.5 场景4:栈删除引用,成为堆下游
2.5 小结
第3章 Go语言内存管理洗髓经
3.1 何为内存
3.2 内存为什么需要管理
3.3 操作系统是如何管理内存的
3.3.1 虚拟内存
3.3.2 MMU内存管理单元
3.3.3 虚拟内存本身怎么存放
3.3.4 CPU内存访问过程
3.3.5 内存的局部性
3.4 如何用Go语言实现内存管理和内存池设计
3.4.1 基于Cgo的内存C接口封装
3.4.2 基础内存缓冲Buf实现
3.4.3 内存池设计与实现
3.4.4 内存池的功能单元测试
……
第二篇 Go语言编程进阶之路
第三篇 Go语言框架设计之路
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证