更新时间:2021-07-15 17:34:39
cover
Title Page
Copyright
Mastering C++ Multithreading
Credits
About the Author
About the Reviewer
www.PacktPub.com
Why subscribe?
Customer Feedback
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Downloading the example code
Errata
Piracy
Questions
Revisiting Multithreading
Getting started
The multithreaded application
Makefile
Other applications
Summary
Multithreading Implementation on the Processor and OS
Defining processes and threads
Tasks in x86 (32-bit and 64-bit)
Process state in ARM
The stack
Defining multithreading
Flynn's taxonomy
Symmetric versus asymmetric multiprocessing
Loosely and tightly coupled multiprocessing
Combining multiprocessing with multithreading
Multithreading types
Temporal multithreading
Simultaneous multithreading (SMT)
Schedulers
Tracing the demo application
Mutual exclusion implementations
Hardware
Software
C++ Multithreading APIs
API overview
POSIX threads
Windows support
PThreads thread management
Mutexes
Condition variables
Synchronization
Semaphores
Thread local storage (TLC)
Windows threads
Thread management
Advanced management
Thread local storage
Boost
Qt
QThread
Thread pools
QtConcurrent
POCO
Thread class
Thread pool
Thread local storage (TLS)
C++ threads
Putting it together
Thread Synchronization and Communication
Safety first
The scheduler
High-level view
Implementation
Request class
Worker class
Dispatcher
Output
Sharing data
Using r/w-locks
Using shared pointers
Native C++ Threads and Primitives
The STL threading API
Boost.Thread API
The 2011 standard
C++14
C++17
STL organization
Basic use
Passing parameters