深入理解Go併發編程-從原理到實踐,看這本就夠了 晁嶽攀 9787121466465 【台灣高等教育出版社】

圖書均為代購,正常情形下,訂後約兩周可抵台。
物品所在地:中國大陸
原出版社:電子工業
NT$1,005
商品編號:
供貨狀況: 尚有庫存

此商品參與的優惠活動

加入最愛
商品介紹
*數量非實際在台庫存
*完成訂單後正常情形下約兩周可抵台

*本賣場提供之資訊僅供參考,以到貨標的為實際資訊。
印行年月:202311*若逾兩年請先於私訊洽詢存貨情況,謝謝。
台灣(台北市)在地出版社,每筆交易均開具統一發票,祝您中獎最高1000萬元。
書名:深入理解Go併發編程-從原理到實踐,看這本就夠了
ISBN:9787121466465
出版社:電子工業
著編譯者:晁嶽攀
頁數:1
所在地:中國大陸 *此為代購商品
書號:1596267
可大量預訂,請先連絡。

內容簡介

本書從標準庫的併發原語講起,循序漸進的介紹擴展庫、分散式的併發原語、併發模式和經典併發問題。內容從併發原語的使用場景、使用方法、常見錯誤,內部實現多層次的講解,全面的介紹Go併發的知識。全書分為三個部分,主要部分又分為四個層次。第一部分主要介紹Go標準庫提供的各種併發類型(併發原語)的知識,方便初學Go語言的同學能夠掌握好Go語言的基礎能力,包括一些Go開發者都不熟悉的類型。第二部分屬於拔高的內容,介紹積累優秀的擴展庫,幫助Go開發者擴展思維,提高視野。這些擴展庫如果能夠掌握,在工作中會大有裨益。第三部分介紹分散式併發原語。這部分內容鮮有人介紹,但是屬於互聯網公司常用的一些場景,尤其是開發大型分散式項目。很多讀者缺乏這方面的經驗和機會,通過閱讀此書,可以彌補這方面的知識的缺乏和實戰的機會。

目錄

第1章 Go併發編程和調度器
1 1 Go特別適合併發編程
1 2 併發 vs 并行
1 3 阿姆達爾定律:併發編程優化是有上限的
1 4 Go併發並不一定最快
1 5 Go運行時調度器
第2章 互斥鎖 Mutex
2 1 競爭條件與數據競爭
2 2 Mutex的用法
2 2 1 一個併發問題
2 2 2 Mutex的使用
2 2 3 地道的用法
2 3 檢查程序中的數據競爭
2 4 Mutex的歷史實現
2 4 1 初始版本
2 4 2 多給新的 goroutine 一些機會
2 4 3 多給競爭者一些機會
2 4 4 解決飢餓問題
2 4 5 TryLock
2 5 Mutex的使用陷阱
2 5 1 誤寫
2 5 2 死鎖
2 5 3 鎖重入
2 5 4 複製鎖
2 6 Mutex的擴展
2 6 1 可重入鎖
2 6 2 支持併發 map
2 6 3 封裝值
第3章 讀寫鎖 RWMutex
3 1 讀寫鎖的使用場景
3 2 讀寫鎖的使用方法
3 3 讀寫鎖的實現
3 3 1 RLock的實現
3 3 2 RUnlock的實現
3 3 3 Lock的實現
3 3 4 Unlock的實現
3 3 5 TryLock的實現
3 3 6 TryRLock的實現
3 4 讀寫鎖的使用陷阱
3 4 1 鎖重入
3 4 2 死鎖
3 4 3 發現死鎖
3 5 讀寫鎖的擴展
第4章 任務編排好幫手 WaitGroup
4 1 WaitGroup的使用方法
4 2 WaitGroup的實現
4 3 WaitGroup的使用陷阱
4 3 1 Add 方法調用的時機不對
4 3 2 計數器的值為負數
4 3 3 錯誤的調用 Add的時機
4 3 4 知名項目中關於 WaitGroup 使用的 bug
4 4 WaitGroup的擴展
4 5 noCopy:輔助 vet 檢查
第5章 條件變數 Cond
5 1 Cond的使用方法
5 2 Cond的實現
5 3 Cond的使用陷阱
5 3 1 調用 Wait 時沒有加鎖
5 3 2 喚醒之後不檢查判斷條件
5 4 在實際項目中使用 Cond的例子
第6章 單例化利器 Once
6 1 Once的使用方法
6 2 Once的實現
6 3 Once的使用陷阱
6 3 1 死鎖
6 3 2 未初始化
第7章 併發 map
7 1 線程安全的 map
7 1 1 使用 map的兩種常見錯誤
7 1 2 加讀寫鎖:擴展 map,支持併發讀/寫
7 2 sync Map的使用方法
7 3 sync Map的實現
7 3 1 Swap 方法
7 3 2 Load 方法
7 3 3 Delete 方法
7 4 分片加鎖:更高效的併發map
7 5 lock-free map
第8章 池 Pool
8 1 sync Pool的使用方法
8 2 sync Pool的實現
8 2 1 Get 方法的實現
8 2 2 Put 方法的實現
8 3 sync Pool的使用陷阱
8 4 連接池
8 4 1 標準庫中的 HTTP Client 池
8 4 2 資料庫連接池
8 4 3 TCP 連 接池
8 4 4 Memcached Client 連接池
8 4 5 net/rpc 中的 Request/Response 對象池
8 5 goroutine/worker 池
第9章 不止是上下文:Context
9 1 Context的發展歷史
9 2 Context的使用方法
9 2 1 基本用法
9 2 2 傳遞上下文
9 2 3 可撤銷的上下文
9 2 4 帶超時功能的上下文
9 3 Context 實戰
9 4 Context的使用陷阱
9 5 Context的實現
9 5 1 WithValue的實現
9 5 2 WithCancel的實現
9 5 3 WithDeadline的實現
第10章 原子操作
10 1 原子操作的基礎知識
10 2 原子操作的使用場景
10 3 atomic 提供的函數和類型
10 3 1 AddXXX 函數
10 3 2 CompareAndSwapXXX 函數
10 3 3 SwapXXX 函數
10 3 4 LoadXXX 函數
10 3 5 StoreXXX 函數
10 3 6 Value 類型
10 3 7 Bool、Int32、Int64、Pointer、Uint32、Uint64、Uintptr
10 4 uber-go/atomic 庫
10 5 lock-free 隊列的實現
10 6 原子性和可見性
第11章 channel 基礎:另闢蹊徑解決併發問題
11 1 channel的歷史
11 2 channel的應用場景
11 3 channel的基本用法
11 4 channel的實現
11 4 1 channel的數據結構
11 4 2 初始化
11 4 3 發送數據
11 4 4 接收數據
11 4 5 關閉 channel
11 5 channel的使用陷阱 / 224
11 5 1 panic 和 goroutine 泄漏
11 5 2 知名項目踩過的坑
第12章 channel的內部實現和陷阱
12 1 使用反射操作 select 和 channel
12 2 channel的應用場景
第13章 Go內存模型
13 1 指令重排和可見性的問題
13 2 sequenced before、synchronized before 和 happens before
13 3 各種同步原語的同步保證
13 3 1 初始化
13 3 2 goroutine的運行
13 3 3 channel
13 3 4 鎖(Mutex 和 RWMutex)
13 3 5 Once
13 3 6 WaitGroup
13 3 7 atomic操作
13 3 8 Finalizer、sync Cond、sync Map 和 sync Pool
13 4 不正確的同步
第14章 信號量 Semaphore
14 1 什麼是信號量
14 1
詳細資料或其他書籍請至台灣高等教育出版社查詢,查後請於PChome商店街私訊告知ISBN或書號,我們即儘速上架。
規格說明
運送方式
已加入購物車
已更新購物車
網路異常,請重新整理