|
|
|
|
LEADER |
00000cam a2200000Mi 4500 |
001 |
EBOOKCENTRAL_on1039680680 |
003 |
OCoLC |
005 |
20240329122006.0 |
006 |
m o d |
007 |
cr cnu---unuuu |
008 |
180609s2018 enk o 000 0 eng d |
040 |
|
|
|a EBLCP
|b eng
|e pn
|c EBLCP
|d MERUC
|d IDB
|d CHVBK
|d NLE
|d TEFOD
|d OCLCQ
|d LVT
|d UKAHL
|d OCLCQ
|d K6U
|d N$T
|d NZAUC
|d OCLCQ
|d OCLCL
|d TMA
|d OCLCQ
|
020 |
|
|
|a 9781788478359
|q (electronic bk.)
|
020 |
|
|
|a 1788478355
|q (electronic bk.)
|
029 |
1 |
|
|a AU@
|b 000066230449
|
029 |
1 |
|
|a CHNEW
|b 001016541
|
029 |
1 |
|
|a CHVBK
|b 523135386
|
035 |
|
|
|a (OCoLC)1039680680
|
037 |
|
|
|a A740B3DF-D89E-48FB-BA3B-50487B0ADD77
|b OverDrive, Inc.
|n http://www.overdrive.com
|
050 |
|
4 |
|a QA76.73.R87
|b .T768 2018eb
|
082 |
0 |
4 |
|a 005.133
|2 23
|
049 |
|
|
|a UAMI
|
100 |
1 |
|
|a L. Troutwine, Brian.
|
245 |
1 |
0 |
|a Hands-On Concurrency with Rust :
|b Confidently build memory-safe, parallel, and efficient software in Rust.
|
260 |
|
|
|a Birmingham :
|b Packt Publishing,
|c 2018.
|
300 |
|
|
|a 1 online resource (453 pages)
|
336 |
|
|
|a text
|b txt
|2 rdacontent
|
337 |
|
|
|a computer
|b c
|2 rdamedia
|
338 |
|
|
|a online resource
|b cr
|2 rdacarrier
|
588 |
0 |
|
|a Print version record.
|
505 |
0 |
|
|a Cover; Title Page; Copyright and Credits; Dedication; Packt Upsell; Contributors; Table of Contents; Preface; Chapter 1: Preliminaries -- Machine Architecture and Getting Started with Rust; Technical requirements; The machine; The CPU; Memory and caches; Memory model; Getting set up; The interesting part; Debugging Rust programs; Summary; Further reading; Chapter 2: Sequential Rust Performance and Testing; Technical requirements; Diminishing returns; Performance; Standard library HashMap; Naive HashMap; Testing with QuickCheck; Testing with American Fuzzy Lop.
|
505 |
8 |
|
|a Performance testing with CriterionInspecting with the Valgrind Suite; Inspecting with Linux perf; A better naive HashMap; Summary; Further reading; Chapter 3: The Rust Memory Model -- Ownership, References and Manipulation; Technical requirements; Memory layout; Pointers to memory; Allocating and deallocating memory; The size of a type; Static and dynamic dispatch; Zero sized types; Boxed types; Custom allocators; Implementations; Option; Cell and RefCell; Rc; Vec; Summary; Further reading; Chapter 4: Sync and Send -- the Foundation of Rust Concurrency; Technical requirements; Sync and Send.
|
505 |
8 |
|
|a Racing threadsThe flaw of the Ring; Getting back to safety; Safety by exclusion; Using MPSC; A telemetry server; Summary; Further reading; Chapter 5: Locks -- Mutex, Condvar, Barriers and RWLock; Technical requirements; Read many, write exclusive locks -- RwLock; Blocking until conditions change -- condvar; Blocking until the gang's all here -- barrier; More mutexes, condvars, and friends in action; The rocket preparation problem; The rope bridge problem; Hopper-an MPSC specialization; The problem; Hopper in use; A conceptual view of hopper; The deque; The Receiver; The Sender.
|
505 |
8 |
|
|a Testing concurrent data structuresQuickCheck and loops; Searching for crashes with AFL; Benchmarking; Summary; Further reading; Chapter 6: Atomics -- the Primitives of Synchronization; Technical requirements; Linearizability; Memory ordering -- happens-before and synchronizes-with; Ordering::Relaxed; Ordering::Acquire; Ordering::Release; Ordering::AcqRel; Ordering::SeqCst; Building synchronization; Mutexes; Compare and set mutex; An incorrect atomic queue; Options to correct the incorrect queue; Semaphore; Binary semaphore, or, a less wasteful mutex; Summary; Further reading.
|
505 |
8 |
|
|a Chapter 7: Atomics -- Safely Reclaiming MemoryTechnical requirements; Approaches to memory reclamation; Reference counting; Tradeoffs; Hazard pointers; A hazard-pointer Treiber stack; The hazard of Nightly; Exercizing the hazard-pointer Treiber stack; Tradeoffs; Epoch-based reclamation; An epoch-based Treiber stack; crossbeam_epoch::Atomic; crossbeam_epoch::Guard::defer; crossbeam_epoch::Local::pin; Exercising the epoch-based Treiber stack; Tradeoffs; Summary; Further reading; Chapter 8: High-Level Parallelism -- Threadpools, Parallel Iterators and Processes; Technical requirements.
|
500 |
|
|
|a Thread pooling.
|
520 |
|
|
|a Writing safe and correct parallel programs is tough. Reasoning about concurrent memory modification is tough; efficiently exploiting the modern computing environment (with its multi-layered caches and deep execution pipelines) is also tough. Most systems programming languages add a further complication: unsafe memory access. The burden on you ...
|
590 |
|
|
|a eBooks on EBSCOhost
|b EBSCO eBook Subscription Academic Collection - Worldwide
|
590 |
|
|
|a ProQuest Ebook Central
|b Ebook Central Academic Complete
|
650 |
|
0 |
|a Rust.
|
650 |
|
0 |
|a Programming languages.
|
650 |
|
7 |
|a Portable & handheld devices: consumer/user guides.
|2 bicssc
|
650 |
|
7 |
|a Mobile phones: consumer/user guides.
|2 bicssc
|
650 |
|
7 |
|a Parallel processing.
|2 bicssc
|
650 |
|
7 |
|a Programming & scripting languages: general.
|2 bicssc
|
650 |
|
7 |
|a Computers
|x Programming
|x Parallel.
|2 bisacsh
|
650 |
|
7 |
|a Computers
|x Hardware
|x Handheld Devices.
|2 bisacsh
|
650 |
|
7 |
|a Computers
|x Programming Languages
|x C.
|2 bisacsh
|
758 |
|
|
|i has work:
|a Hands-on concurrency with Rust (Text)
|1 https://id.oclc.org/worldcat/entity/E39PCFMhChDv37wKbQD7ctbfMP
|4 https://id.oclc.org/worldcat/ontology/hasWork
|
776 |
0 |
8 |
|i Print version:
|a L. Troutwine, Brian.
|t Hands-On Concurrency with Rust : Confidently build memory-safe, parallel, and efficient software in Rust.
|d Birmingham : Packt Publishing, ©2018
|
856 |
4 |
0 |
|u https://ebookcentral.uam.elogim.com/lib/uam-ebooks/detail.action?docID=5405682
|z Texto completo
|
938 |
|
|
|a Askews and Holts Library Services
|b ASKH
|n BDZ0036924765
|
938 |
|
|
|a EBL - Ebook Library
|b EBLB
|n EBL5405682
|
938 |
|
|
|a EBSCOhost
|b EBSC
|n 1823655
|
994 |
|
|
|a 92
|b IZTAP
|