| *完成訂單後正常情形下約兩周可抵台。 *本賣場提供之資訊僅供參考,以到貨標的為正確資訊。 印行年月:202501*若逾兩年請先於私訊洽詢存貨情況,謝謝。 台灣(台北市)在地出版社,每筆交易均開具統一發票,祝您中獎最高1000萬元。 書名:Rust併發編程實戰 ISBN:9787519891909 出版社:中國電力 著編譯者:瑪拉.博斯 頁數:269 所在地:中國大陸 *此為代購商品 書號:1686335 可大量預訂,請先連絡。 內容簡介 Rust編程語言非常適合併發編程,並且其生態系統中有許多庫包含大量併發數據結構、鎖等。但正確實現這些結構可能會很困難。即使在使用最廣泛的庫中,內存順序錯誤也並不少見。 在這本非常實用的書中,Rust庫團隊負責人MaraBos幫助各個級別的Rust程序員清晰地理解底層併發性。你將學習有關原子操作和內存順序的一切,以及它們如何與基本操作系統API結合使用來構建諸如互斥鎖和條件變數之類的常見原語。完成後,你將牢固掌握Rust的內存模型、處理器以及操作系統是如何相互配合的。 通過本書,你將學到: Rust的類型系統和正確的併發編程如何非常好地配合。 有關互斥鎖、條件變數、原子操作和內存順序的一切。 在英特爾和ARM處理器上進行原子操作時會發生什麼情況。 鎖是如何藉助操作系統的支持來實現的。 如何編寫包含併發、原子操作和鎖的正確代碼。 如何正確構建自己的鎖和同步原語。作者簡介 瑪拉·博斯(Mara Bos)維護著Rust標準庫,並用Rust構建實時控制系統。作為Rust庫團隊的負責人,她熟知該語言和標準庫的方方面面。此外,作為Fusion Engineering的創始人兼首席技術官,她多年來一直致力於併發實時系統的工作。維護Rust生態系統中最常用的庫,並每天致力於安全相關係統的工作,使她具備了豐富的實踐經驗,既能理解理論又能將其付諸實踐。目錄 序前言 第1章 Rust併發基礎 1 1 Rust中的線程 1 2 作用域線程 1 3 共享所有權和引用計數 1 3 1 靜態對象 1 3 2 泄漏 1 3 3 引用計數 1 4 借用和數據競爭 1 5 內部可變性 1 5 1 Ce 1 5 2 RefCe 1 5 3 Mutex和RwLock 1 5 4 原子類型 1 5 5 UnsafeCell 1 6 線程安全性:Send和Sync 1 7 鎖:互斥鎖和讀寫鎖 1 7 1 Rust的互斥鎖 1 7 2 鎖中毒 1 7 3 讀寫鎖 1 8 等待:線程停放與條件變數 1 8 1 線程停放 1 8 2 條件變數 1 9 總結 第2章 原子性 2 1 原子載入和存儲操作 2 1 1 示例:停止標誌 2 1 2 示例:進度報告 2 1 3 示例:延遲初始化 2 2 獲取-修改操作 2 2 1 示例:多線程進度報告 2 2 2 示例:統計 2 2 3 示例:ID分配 2 3 比較-交換操作 2 3 1 示例:無溢出的ID分配 2 3 2 示例:延遲一次性初始化 2 4 總結 第3章 內存順序 3 1 重排與優化 3 2 內存模型 3 3 happens-before關係 3 4 寬鬆順序 3 5 釋放和獲取順序 3 5 1 例子:鎖定 3 5 2 示例:通過間接方式實現延遲初始化 3 6 消費順序 3 7 順序一致性順序 3 8 柵欄 3 9 常見誤解 3 10 總結 第4章 構建我們自己的自旋鎖 4 1 最簡實現 4 2 不安全的自旋鎖 4 3 使用鎖衛士的安全介面 4 4 總結 第5章 構建我們自己的通道 5 1 一個基於互斥鎖的簡單通道 5 2 一個不安全的一次性通道 5 3 通過運行時檢查提高安全性 5 4 通過類型系統提高安全性 5 5 通過借用避免分配 5 6 阻塞 5 7 總結 第6章 構建我們自己的Arc 6 1 基礎引用計數 6 1 1 測測它 6 1 2 修改 6 2 弱指針 6 3 優化 6 4 總結 第7章 理解處理器 7 1 處理器指令 7 1 1 載入和存儲 7 1 2 Read-Modify-write操作 7 1 3 Load-Linked指令和Store-Conditiona1指令 7 2 緩存 7 2 1 緩存一致性 7 2 2 對性能的影響 7 3 重排 7 4 內存順序 7 4 1 x86 64:強內存序 7 4 2 ARM64:弱內存序 7 4 3 一個實驗 7 4 4 內存屏障 7 5 總結 第8章 操作系統原語 8 1 與內核交互 8 2 POSIX 8 3 Linux 8 3 1 Futex 8 3 2 Futex操作 8 3 3 優先順序繼承Futex操作 8 4 macOS 8 5 Windows 8 5 1 重量級內核對象 8 5 2 輕量級對象 8 5 3 基於地址的等待 8 6 總結 第9章 構建我們自己的鎖 9 1 Mutex 9 1 1 避免系統調用 9 1 2 進一步優化 9 1 3 基準測試 9 2 條件變數 9 2 1 避免系統調用 9 2 2 避免錯誤喚醒 9 3 讀寫鎖 9 3 1 避免忙循環的寫入者 9 3 2 避免寫入者飢餓 9 4 總結 第10章 想法和靈感 10 1 信號量 10 2 RCU 10 3 無鎖鏈表 10 4 隊列鎖 10 5 停車位鎖 10 6 序列鎖 10 7 教學材料 詳細資料或其他書籍請至台灣高等教育出版社查詢,查後請於PChome商店街私訊告知ISBN或書號,我們即儘速上架。 |