Parallele Programmierung in Rust: Ein praktischer Leitfaden
Освойте конкурентность и параллелизм в Rust
Zusammenfassung:
Einleitung
Das Buch „Hands-On Concurrency with Rust“ (Autor: Brian Troutwine, 2018, 448 Seiten) ist nicht nur ein weiteres Lehrbuch über die Sprache Rust, sondern ein tiefer Einstieg in eines der komplexesten und wichtigsten Themen der modernen Systemprogrammierung: Concurrency. Rust ist bekannt für seine Fähigkeit, Datenrennen bereits zur Compile-Zeit zu verhindern, aber um diese Stärke voll auszuschöpfen, muss man nicht nur die Syntax, sondern auch die interne Mechanik von Threads, Speicher und Synchronisation verstehen. Genau diese Aufgabe löst dieses Buch.
Brian Troutwine ist ein erfahrener Entwickler und Zuverlässigkeitsingenieur, der mit hochbelasteten Systemen gearbeitet hat. Sein Ansatz zeichnet sich durch Praktikabilität aus: Jedes Kapitel enthält nicht nur Theorie, sondern auch fertige Codebeispiele, die sofort ausgeführt und modifiziert werden können. Das Buch richtet sich an Leser, die bereits mit den Grundlagen von Rust vertraut sind, und bietet den Übergang vom Schreiben einfacher Single-Thread-Programme zur Erstellung komplexer Multi-Thread-Systeme.
Worum geht es in diesem Buch?
Das Buch deckt das gesamte Spektrum der Themen rund um Concurrency in Rust ab. Es beginnt mit grundlegenden Konzepten (Threads, Mutexe, Channels) und geht schrittweise zu fortgeschrittenen Techniken über: Lock-freie Datenstrukturen, atomare Operationen, Speicherverwaltung (Arc, Cell, RefCell) und asynchrone Programmierung. Besonderes Augenmerk liegt auf der Sicherheit – wie man Deadlocks, Livelocks und andere Fallstricke vermeidet.
Die Struktur des Buches ist logisch: Zuerst lernen Sie, Threads zu verwalten
Empfehlungen
Java und Datenbanken: Ein praktischer Leitfaden
Asynchrones Kotlin: Das vollständige Handbuch
Algorithmen und Datenstrukturen in C++
Algorithmen und Datenstrukturen in TypeScript
Sicherheit von PHP-Anwendungen: Von den Grundlagen bis zu fortgeschrittenen Schutztechniken
JavaScript (Node.js) und Kubernetes: Bereitstellung und Orchestrierung