Hands-On Concurrency with Rust (Paperback)

Brian L. Troutwine

  • 出版商: Packt Publishing
  • 出版日期: 2018-05-31
  • 售價: $1,930
  • 貴賓價: 9.5$1,834
  • 語言: 英文
  • 頁數: 462
  • 裝訂: Paperback
  • ISBN: 1788399978
  • ISBN-13: 9781788399975
  • 相關分類: Rust 語言JVM 語言
  • 海外代購書籍(需單獨結帳)

買這商品的人也買了...

商品描述

Get to grips with modern software needs by learning the effective uses of Rust's powerful memory safety

Key Features

  • Learn how To benchmark and improve the sequential performance characteristics of your software
  • Understand the use of operating system processes in a high-scale concurrent system and manage them effectively.
  • The book will explore a variety of coordination methods available in the standard library as well as a sampling of those available in the growing Crate ecosystem.

Book Description

Modern computers are deeply curious machines. Although difficult, they can be exploited with languages designed for serial CPUs with care and dedication. Rust reduces the burden to the programmer without sacrificing the accuracy or performance of the computer. This book will teach you to build memory-safe and concurrent software in Rust efficiently.

The book starts with the fundamentals of Rust and discusses machine architecture concepts. You will be taken through ways to measure and improve performance of Rust code systematically and how to write collections with confidence. You will learn about the Sync and Send traits applied to threads and coordinating thread execution with locks. The book will show you how to efficiently embed Rust in C++ code and the functionalities of various crates for multithreaded applications. It will do a deep interrogation of key implementations - of a channel, mutex and skiplist - in Rust.. You will be familiarized with radically different alternative approaches that exist in the ecosystem for structuring and managing high-scale systems.

By the end, you will feel comfortable designing a safe, consistent, high-performant and concurrent application in Rust.

What you will learn

  • Interactions of Rust structures with CPU caches and OS specific tooling to measure code performance 
  • The working of Rust's memory model to write collections - owning and referring.
  • How to use built-in MPSC without hitting the common stumbling points for new Rust programmers.
  • Use atomics to solve common related to scare resource management situation
  • Effectively use locks available in the Rust standard library so as to use them in solving coordination problems
  • Use the POSIX threading interface to perform thread pinning and the like

Who This Book Is For

This book is aimed at software engineers with a basic understanding of Rust who want to exploit the parallel and concurrent nature of modern computing environments, safely.

商品描述(中文翻譯)

掌握 Rust 強大的記憶體安全性,學習現代軟體需求的有效使用。

主要特點:

- 學習如何測試並改進軟體的順序執行效能。
- 瞭解在高規模並發系統中使用作業系統進程並有效管理它們。
- 本書將探討標準庫中提供的各種協調方法,以及日益增長的 Crate 生態系統中的一些方法。

書籍描述:

現代電腦是非常好奇的機器。儘管困難,但可以利用專為串行 CPU 設計的語言來利用它們。Rust 減輕了程式設計師的負擔,同時不會犧牲電腦的準確性或效能。本書將教你如何在 Rust 中高效地建立安全且並發的軟體。

本書從 Rust 的基礎知識開始,並討論機器架構概念。你將學習如何系統性地測量和改進 Rust 代碼的效能,以及如何自信地編寫集合。你將瞭解在線程中應用的 Sync 和 Send 特性,以及如何使用鎖定協調線程執行。本書還將展示如何在 C++ 代碼中高效地嵌入 Rust,以及用於多線程應用程式的各種 crate 的功能。它將深入探討 Rust 中關鍵實現的通道、互斥鎖和跳躍表。你將熟悉生態系統中用於結構化和管理高規模系統的完全不同的替代方法。

最後,你將能夠在 Rust 中設計一個安全、一致、高效且並發的應用程式。

你將學到什麼:

- Rust 結構與 CPU 快取和特定於作業系統的工具的交互作用,以測量代碼效能。
- Rust 的記憶體模型的運作方式,以編寫集合(擁有和引用)。
- 如何使用內建的 MPSC,避免新手 Rust 程式設計師常見的問題。
- 使用原子操作解決與稀缺資源管理相關的常見問題。
- 有效使用 Rust 標準庫中的鎖,以解決協調問題。
- 使用 POSIX 線程介面執行線程固定等操作。

本書適合對 Rust 有基本了解並希望安全地利用現代計算環境的並行和並發特性的軟體工程師。