【資源分享】Go語言併發之道 [美] 凱瑟琳(Katherine Cox-Buday)著 PDF 下載

追火車發表於2019-04-15

一、下載連結

廢話少說,先上鍊接:
點此下載
https://download.csdn.net/download/tmt123421/11116347


支援正版,正版購買連結:點此購買

二、內容簡介

本書作者帶你一步一步深入這些方法。你將理解 Go語言為何選定這些併發模型,這些模型又會帶來什麼問題,以及你如何組合利用這些模型中的原語去解決問題。學習那些讓你在獨立且自信的編寫與實現任何規模併發系統時所需要用到的技巧和工具。

(-:

理解Go語言如何解決併發難以編寫正確這一根本問題。
學習併發與並行的關鍵性區別。
深入到Go語言的記憶體同步原語。
利用這些模式中的原語編寫可維護的併發程式碼。
將模式組合成為一系列的實踐,使你能夠編寫大規模的分散式系統。
學習 goroutine 背後的複雜性,以及Go語言的執行時如何將所有東西連線在一起。

images

三、作者簡介

Katherine Cox-Buday是一名電腦科學家,目前工作於 Simple online banking。她的業餘愛好包括軟體工程、創作、Go 語言(igo、baduk、weiquei) 以及音樂,這些都是她長期的追求,並且有著不同層面的貢獻。

四、目錄

前言 1
第1章 併發概述 9
摩爾定律,Web Scale和我們所陷入的混亂 10
為什麼併發很難? 12
競爭條件 13
原子性 15
記憶體訪問同步 17
死鎖、活鎖和飢餓 20
確定併發安全 28
面對複雜性的簡單性 31
第2章 對你的程式碼建模:通訊順序程式 33
併發與並行的區別 33
什麼是CSP 37
如何幫助你 40
Go語言的併發哲學 43
第3章 Go語言併發元件 47
goroutine 47
sync包 58
WaitGroup 58
互斥鎖和讀寫鎖 60
cond 64
once 69
池 71
channel 76
select 語句 92
GOMAXPROCS控制 97
小結 98
第4章 Go語言的併發模式 99
約束 99
for-select迴圈103
防止goroutine洩漏 104
or-channel 109
錯誤處理112
pipeline 116
構建pipeline的最佳實踐 120
一些便利的生成器 126
扇入,扇出 132
or-done-channel 137
tee-channel 139
橋接channel模式 140
佇列排隊143
context包 151
小結 168
第5章 大規模併發 169
異常傳遞169
超時和取消 178
心跳 184
複製請求197
速率限制199
治癒異常的goroutine 215
小結 222
第6章 goroutine和Go語言執行時 223
工作竊取223
竊取任務還是續體 231
向開發人員展示所有這些資訊 240
尾聲 240
附錄A 241


——2019-04-15——

相關文章